home *** CD-ROM | disk | FTP | other *** search
MacBinary | 1988-11-02 | 29.0 KB | [TEXT/MPS ] |
open in:
MacOS 8.1
|
Win98
|
DOS
browse contents |
view JSON data
|
view as text
This file was processed as: MacBinary
(archive/macBinary).
Confidence | Program | Detection | Match Type | Support
|
---|
10%
| dexvert
| MacBinary (archive/macBinary)
| fallback
| Supported |
1%
| dexvert
| System V 64-bit library (executable/systemV64BitLibrary)
| ext
| Unsupported |
1%
| dexvert
| COFF Library (other/coffLibrary)
| ext
| Unsupported |
1%
| dexvert
| Text File (text/txt)
| fallback
| Supported |
100%
| file
| MacBinary II, inited, Tue Nov 1 20:00:29 1988, modified Tue Nov 1 20:00:29 1988, creator 'MPS ', type ASCII, 29136 bytes "SampleMisc.a" , at 0x7250 382 bytes resource
| default (weak)
| |
99%
| file
| data
| default
| |
74%
| TrID
| Macintosh plain text (MacBinary)
| default
| |
25%
| TrID
| MacBinary 2
| default (weak)
| |
100%
| siegfried
| fmt/1762 MacBinary (II)
| default
| |
100%
| lsar
| MacBinary
| default
|
|
id metadata |
---|
key | value |
---|
macFileType | [TEXT] |
macFileCreator | [MPS ] |
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 0c 53 61 6d 70 6c 65 | 4d 69 73 63 2e 61 00 00 |..Sample|Misc.a..|
|00000010| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 54 45 58 54 4d 50 53 | 20 01 00 00 00 00 00 00 |.TEXTMPS| .......|
|00000050| 00 00 00 00 00 71 d0 00 | 00 01 7e 9f 94 0e ad 9f |.....q..|..~.....|
|00000060| 94 0e ad 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 aa 6e 00 00 |........|.....n..|
|00000080| 2a 0d 2a 09 41 70 70 6c | 65 20 4d 61 63 69 6e 74 |*.*.Appl|e Macint|
|00000090| 6f 73 68 20 44 65 76 65 | 6c 6f 70 65 72 20 54 65 |osh Deve|loper Te|
|000000a0| 63 68 6e 69 63 61 6c 20 | 53 75 70 70 6f 72 74 0d |chnical |Support.|
|000000b0| 2a 0d 2a 09 4d 75 6c 74 | 69 46 69 6e 64 65 72 2d |*.*.Mult|iFinder-|
|000000c0| 41 77 61 72 65 20 53 69 | 6d 70 6c 65 20 53 61 6d |Aware Si|mple Sam|
|000000d0| 70 6c 65 20 41 70 70 6c | 69 63 61 74 69 6f 6e 0d |ple Appl|ication.|
|000000e0| 2a 0d 2a 09 53 61 6d 70 | 6c 65 0d 2a 0d 2a 09 53 |*.*.Samp|le.*.*.S|
|000000f0| 61 6d 70 6c 65 4d 69 73 | 63 2e 61 09 2d 09 41 73 |ampleMis|c.a.-.As|
|00000100| 73 65 6d 62 6c 65 72 20 | 53 6f 75 72 63 65 0d 2a |sembler |Source.*|
|00000110| 0d 2a 09 43 6f 70 79 72 | 69 67 68 74 20 a9 20 31 |.*.Copyr|ight . 1|
|00000120| 39 38 38 20 41 70 70 6c | 65 20 43 6f 6d 70 75 74 |988 Appl|e Comput|
|00000130| 65 72 2c 20 49 6e 63 2e | 0d 2a 09 41 6c 6c 20 72 |er, Inc.|.*.All r|
|00000140| 69 67 68 74 73 20 72 65 | 73 65 72 76 65 64 2e 0d |ights re|served..|
|00000150| 2a 0d 2a 09 56 65 72 73 | 69 6f 6e 73 3a 09 31 2e |*.*.Vers|ions:.1.|
|00000160| 30 09 09 09 30 38 2f 38 | 38 0d 2a 09 09 09 31 2e |0...08/8|8.*...1.|
|00000170| 30 31 09 09 09 31 31 2f | 38 38 0d 2a 0d 2a 09 43 |01...11/|88.*.*.C|
|00000180| 6f 6d 70 6f 6e 65 6e 74 | 73 3a 09 53 61 6d 70 6c |omponent|s:.Sampl|
|00000190| 65 2e 70 09 09 4e 6f 76 | 65 6d 62 65 72 20 31 2c |e.p..Nov|ember 1,|
|000001a0| 20 31 39 38 38 0d 2a 09 | 09 09 53 61 6d 70 6c 65 | 1988.*.|..Sample|
|000001b0| 2e 63 09 09 4e 6f 76 65 | 6d 62 65 72 20 31 2c 20 |.c..Nove|mber 1, |
|000001c0| 31 39 38 38 0d 2a 09 09 | 09 53 61 6d 70 6c 65 2e |1988.*..|.Sample.|
|000001d0| 61 09 09 4e 6f 76 65 6d | 62 65 72 20 31 2c 20 31 |a..Novem|ber 1, 1|
|000001e0| 39 38 38 0d 2a 09 09 09 | 53 61 6d 70 6c 65 2e 69 |988.*...|Sample.i|
|000001f0| 6e 63 31 2e 61 09 09 4e | 6f 76 65 6d 62 65 72 20 |nc1.a..N|ovember |
|00000200| 31 2c 20 31 39 38 38 0d | 2a 09 09 09 53 61 6d 70 |1, 1988.|*...Samp|
|00000210| 6c 65 4d 69 73 63 2e 61 | 09 09 4e 6f 76 65 6d 62 |leMisc.a|..Novemb|
|00000220| 65 72 20 31 2c 20 31 39 | 38 38 0d 2a 09 09 09 53 |er 1, 19|88.*...S|
|00000230| 61 6d 70 6c 65 2e 72 09 | 09 4e 6f 76 65 6d 62 65 |ample.r.|.Novembe|
|00000240| 72 20 31 2c 20 31 39 38 | 38 0d 2a 09 09 09 53 61 |r 1, 198|8.*...Sa|
|00000250| 6d 70 6c 65 2e 68 09 09 | 4e 6f 76 65 6d 62 65 72 |mple.h..|November|
|00000260| 20 31 2c 20 31 39 38 38 | 0d 2a 09 09 09 50 53 61 | 1, 1988|.*...PSa|
|00000270| 6d 70 6c 65 2e 6d 61 6b | 65 09 09 4e 6f 76 65 6d |mple.mak|e..Novem|
|00000280| 62 65 72 20 31 2c 20 31 | 39 38 38 0d 2a 09 09 09 |ber 1, 1|988.*...|
|00000290| 43 53 61 6d 70 6c 65 2e | 6d 61 6b 65 09 09 4e 6f |CSample.|make..No|
|000002a0| 76 65 6d 62 65 72 20 31 | 2c 20 31 39 38 38 0d 2a |vember 1|, 1988.*|
|000002b0| 09 09 09 41 53 61 6d 70 | 6c 65 2e 6d 61 6b 65 09 |...ASamp|le.make.|
|000002c0| 09 4e 6f 76 65 6d 62 65 | 72 20 31 2c 20 31 39 38 |.Novembe|r 1, 198|
|000002d0| 38 0d 2a 0d 2a 09 53 61 | 6d 70 6c 65 20 69 73 20 |8.*.*.Sa|mple is |
|000002e0| 61 6e 20 65 78 61 6d 70 | 6c 65 20 61 70 70 6c 69 |an examp|le appli|
|000002f0| 63 61 74 69 6f 6e 20 74 | 68 61 74 20 64 65 6d 6f |cation t|hat demo|
|00000300| 6e 73 74 72 61 74 65 73 | 20 68 6f 77 20 74 6f 0d |nstrates| how to.|
|00000310| 2a 09 69 6e 69 74 69 61 | 6c 69 7a 65 20 74 68 65 |*.initia|lize the|
|00000320| 20 63 6f 6d 6d 6f 6e 6c | 79 20 75 73 65 64 20 74 | commonl|y used t|
|00000330| 6f 6f 6c 62 6f 78 20 6d | 61 6e 61 67 65 72 73 2c |oolbox m|anagers,|
|00000340| 20 6f 70 65 72 61 74 65 | 20 0d 2a 09 73 75 63 63 | operate| .*.succ|
|00000350| 65 73 73 66 75 6c 6c 79 | 20 75 6e 64 65 72 20 4d |essfully| under M|
|00000360| 75 6c 74 69 46 69 6e 64 | 65 72 2c 20 68 61 6e 64 |ultiFind|er, hand|
|00000370| 6c 65 20 64 65 73 6b 20 | 61 63 63 65 73 73 6f 72 |le desk |accessor|
|00000380| 69 65 73 2c 20 0d 2a 09 | 61 6e 64 20 63 72 65 61 |ies, .*.|and crea|
|00000390| 74 65 2c 20 67 72 6f 77 | 2c 20 61 6e 64 20 7a 6f |te, grow|, and zo|
|000003a0| 6f 6d 20 77 69 6e 64 6f | 77 73 2e 0d 2a 0d 2a 09 |om windo|ws..*.*.|
|000003b0| 49 74 20 64 6f 65 73 20 | 6e 6f 74 20 62 79 20 61 |It does |not by a|
|000003c0| 6e 79 20 6d 65 61 6e 73 | 20 64 65 6d 6f 6e 73 74 |ny means| demonst|
|000003d0| 72 61 74 65 20 61 6c 6c | 20 74 68 65 20 74 65 63 |rate all| the tec|
|000003e0| 68 6e 69 71 75 65 73 20 | 0d 2a 09 79 6f 75 20 6e |hniques |.*.you n|
|000003f0| 65 65 64 20 66 6f 72 20 | 61 20 6c 61 72 67 65 20 |eed for |a large |
|00000400| 61 70 70 6c 69 63 61 74 | 69 6f 6e 2e 20 49 6e 20 |applicat|ion. In |
|00000410| 70 61 72 74 69 63 75 6c | 61 72 2c 20 53 61 6d 70 |particul|ar, Samp|
|00000420| 6c 65 20 0d 2a 09 64 6f | 65 73 20 6e 6f 74 20 63 |le .*.do|es not c|
|00000430| 6f 76 65 72 20 65 78 63 | 65 70 74 69 6f 6e 20 68 |over exc|eption h|
|00000440| 61 6e 64 6c 69 6e 67 2c | 20 6d 75 6c 74 69 70 6c |andling,| multipl|
|00000450| 65 20 77 69 6e 64 6f 77 | 73 2f 64 6f 63 75 6d 65 |e window|s/docume|
|00000460| 6e 74 73 2c 20 0d 2a 09 | 73 6f 70 68 69 73 74 69 |nts, .*.|sophisti|
|00000470| 63 61 74 65 64 20 6d 65 | 6d 6f 72 79 20 6d 61 6e |cated me|mory man|
|00000480| 61 67 65 6d 65 6e 74 2c | 20 70 72 69 6e 74 69 6e |agement,| printin|
|00000490| 67 2c 20 6f 72 20 75 6e | 64 6f 2e 20 41 6c 6c 20 |g, or un|do. All |
|000004a0| 6f 66 20 0d 2a 09 74 68 | 65 73 65 20 61 72 65 20 |of .*.th|ese are |
|000004b0| 76 69 74 61 6c 20 70 61 | 72 74 73 20 6f 66 20 61 |vital pa|rts of a|
|000004c0| 20 6e 6f 72 6d 61 6c 20 | 66 75 6c 6c 2d 73 69 7a | normal |full-siz|
|000004d0| 65 64 20 61 70 70 6c 69 | 63 61 74 69 6f 6e 2e 0d |ed appli|cation..|
|000004e0| 2a 0d 2a 09 54 68 69 73 | 20 61 70 70 6c 69 63 61 |*.*.This| applica|
|000004f0| 74 69 6f 6e 20 69 73 20 | 61 6e 20 65 78 61 6d 70 |tion is |an examp|
|00000500| 6c 65 20 6f 66 20 74 68 | 65 20 66 6f 72 6d 20 6f |le of th|e form o|
|00000510| 66 20 61 20 4d 61 63 69 | 6e 74 6f 73 68 20 0d 2a |f a Maci|ntosh .*|
|00000520| 09 61 70 70 6c 69 63 61 | 74 69 6f 6e 3b 20 69 74 |.applica|tion; it|
|00000530| 20 69 73 20 4e 4f 54 20 | 61 20 74 65 6d 70 6c 61 | is NOT |a templa|
|00000540| 74 65 2e 20 49 74 20 69 | 73 20 4e 4f 54 20 69 6e |te. It i|s NOT in|
|00000550| 74 65 6e 64 65 64 20 74 | 6f 20 62 65 20 0d 2a 09 |tended t|o be .*.|
|00000560| 75 73 65 64 20 61 73 20 | 61 20 66 6f 75 6e 64 61 |used as |a founda|
|00000570| 74 69 6f 6e 20 66 6f 72 | 20 74 68 65 20 6e 65 78 |tion for| the nex|
|00000580| 74 20 77 6f 72 6c 64 2d | 63 6c 61 73 73 2c 20 62 |t world-|class, b|
|00000590| 65 73 74 2d 73 65 6c 6c | 69 6e 67 2c 20 0d 2a 09 |est-sell|ing, .*.|
|000005a0| 36 30 30 4b 20 61 70 70 | 6c 69 63 61 74 69 6f 6e |600K app|lication|
|000005b0| 2e 20 41 20 73 74 69 63 | 6b 20 66 69 67 75 72 65 |. A stic|k figure|
|000005c0| 20 64 72 61 77 69 6e 67 | 20 6f 66 20 74 68 65 20 | drawing| of the |
|000005d0| 68 75 6d 61 6e 20 62 6f | 64 79 20 6d 61 79 20 0d |human bo|dy may .|
|000005e0| 2a 09 62 65 20 61 20 67 | 6f 6f 64 20 65 78 61 6d |*.be a g|ood exam|
|000005f0| 70 6c 65 20 6f 66 20 74 | 68 65 20 66 6f 72 6d 20 |ple of t|he form |
|00000600| 66 6f 72 20 61 20 70 61 | 69 6e 74 69 6e 67 2c 20 |for a pa|inting, |
|00000610| 62 75 74 20 74 68 61 74 | 20 64 6f 65 73 20 6e 6f |but that| does no|
|00000620| 74 20 0d 2a 09 6d 65 61 | 6e 20 69 74 20 73 68 6f |t .*.mea|n it sho|
|00000630| 75 6c 64 20 62 65 20 75 | 73 65 64 20 61 73 20 74 |uld be u|sed as t|
|00000640| 68 65 20 62 61 73 69 73 | 20 66 6f 72 20 74 68 65 |he basis| for the|
|00000650| 20 6e 65 78 74 20 4d 6f | 6e 61 20 4c 69 73 61 2e | next Mo|na Lisa.|
|00000660| 0d 2a 0d 2a 09 57 65 20 | 72 65 63 6f 6d 6d 65 6e |.*.*.We |recommen|
|00000670| 64 20 74 68 61 74 20 79 | 6f 75 20 72 65 76 69 65 |d that y|ou revie|
|00000680| 77 20 74 68 69 73 20 70 | 72 6f 67 72 61 6d 20 6f |w this p|rogram o|
|00000690| 72 20 54 45 53 61 6d 70 | 6c 65 20 62 65 66 6f 72 |r TESamp|le befor|
|000006a0| 65 20 0d 2a 09 62 65 67 | 69 6e 6e 69 6e 67 20 61 |e .*.beg|inning a|
|000006b0| 20 6e 65 77 20 61 70 70 | 6c 69 63 61 74 69 6f 6e | new app|lication|
|000006c0| 2e 0d 0d 2a 20 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |...* ===|========|
|000006d0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000006e0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000006f0| 3d 3d 3d 3d 3d 0d 2a 20 | 2d 2d 2d 2d 2d 2d 2d 2d |=====.* |--------|
|00000700| 2d 2d 2d 2d 2d 2d 20 49 | 4e 43 4c 55 44 45 53 20 |------ I|NCLUDES |
|00000710| 53 45 43 54 49 4f 4e 20 | 2d 2d 2d 2d 2d 2d 2d 2d |SECTION |--------|
|00000720| 2d 2d 2d 2d 2d 2d 2d 2d | 0d 2a 20 3d 3d 3d 3d 3d |--------|.* =====|
|00000730| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000740| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000750| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 0d 0d 09 50 52 |========|===...PR|
|00000760| 49 4e 54 09 50 55 53 48 | 2c 4f 46 46 09 09 09 3b |INT.PUSH|,OFF...;|
|00000770| 20 64 6f 6e 27 74 20 70 | 72 69 6e 74 20 61 6e 79 | don't p|rint any|
|00000780| 20 6f 66 20 74 68 69 73 | 20 73 74 75 66 66 0d 0d | of this| stuff..|
|00000790| 09 49 4e 43 4c 55 44 45 | 09 27 54 6f 6f 6c 45 71 |.INCLUDE|.'ToolEq|
|000007a0| 75 2e 61 27 0d 09 49 4e | 43 4c 55 44 45 09 27 54 |u.a'..IN|CLUDE.'T|
|000007b0| 72 61 70 73 2e 61 27 0d | 09 49 4e 43 4c 55 44 45 |raps.a'.|.INCLUDE|
|000007c0| 09 27 50 61 63 6b 4d 61 | 63 73 2e 61 27 0d 09 49 |.'PackMa|cs.a'..I|
|000007d0| 4e 43 4c 55 44 45 09 27 | 51 75 69 63 6b 45 71 75 |NCLUDE.'|QuickEqu|
|000007e0| 2e 61 27 0d 09 49 4e 43 | 4c 55 44 45 09 27 53 79 |.a'..INC|LUDE.'Sy|
|000007f0| 73 45 71 75 2e 61 27 0d | 09 49 4e 43 4c 55 44 45 |sEqu.a'.|.INCLUDE|
|00000800| 09 27 53 61 6d 70 6c 65 | 2e 69 6e 63 31 2e 61 27 |.'Sample|.inc1.a'|
|00000810| 09 09 09 3b 20 61 6c 6c | 20 6f 75 72 20 6d 61 63 |...; all| our mac|
|00000820| 72 6f 73 20 61 6e 64 20 | 64 61 74 61 20 74 65 6d |ros and |data tem|
|00000830| 70 6c 61 74 65 73 0d 0d | 09 50 52 49 4e 54 09 50 |plates..|.PRINT.P|
|00000840| 4f 50 09 09 09 09 3b 20 | 72 65 73 74 6f 72 65 20 |OP....; |restore |
|00000850| 74 68 65 20 50 52 49 4e | 54 20 6f 70 74 69 6f 6e |the PRIN|T option|
|00000860| 73 0d 0d 0d 2a 20 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |s...* ==|========|
|00000870| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000880| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000890| 3d 3d 3d 3d 3d 3d 0d 2a | 20 2d 2d 2d 2d 2d 2d 2d |======.*| -------|
|000008a0| 2d 2d 2d 2d 20 20 44 41 | 54 41 20 53 54 4f 52 41 |---- DA|TA STORA|
|000008b0| 47 45 20 55 53 41 47 45 | 20 20 2d 2d 2d 2d 2d 2d |GE USAGE| ------|
|000008c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 0d 2a 20 3d 3d 3d 3d |--------|-.* ====|
|000008d0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000008e0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000008f0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 0d 2a 20 48 |========|====.* H|
|00000900| 65 72 65 20 77 65 20 77 | 69 6c 6c 20 49 4d 50 4f |ere we w|ill IMPO|
|00000910| 52 54 20 74 68 65 20 64 | 61 74 61 20 74 68 61 74 |RT the d|ata that|
|00000920| 20 69 73 20 62 65 69 6e | 67 20 66 72 6f 6d 20 74 | is bein|g from t|
|00000930| 68 65 0d 2a 20 44 41 54 | 41 20 53 54 4f 52 41 47 |he.* DAT|A STORAG|
|00000940| 45 20 41 4c 4c 4f 43 41 | 54 49 4f 4e 20 73 65 63 |E ALLOCA|TION sec|
|00000950| 74 69 6f 6e 20 6f 66 20 | 41 53 61 6d 70 6c 65 2e |tion of |ASample.|
|00000960| 61 2e 20 20 42 79 20 49 | 4d 50 4f 52 54 69 6e 67 |a. By I|MPORTing|
|00000970| 20 74 68 65 6d 0d 2a 20 | 61 74 20 74 68 69 73 20 | them.* |at this |
|00000980| 70 6f 69 6e 74 2c 20 74 | 68 65 79 20 77 69 6c 6c |point, t|hey will|
|00000990| 20 62 65 20 61 63 63 65 | 73 73 69 62 6c 65 20 62 | be acce|ssible b|
|000009a0| 79 20 74 68 69 73 20 65 | 6e 74 69 72 65 20 73 6f |y this e|ntire so|
|000009b0| 75 72 63 65 20 66 69 6c | 65 2e 0d 2a 20 54 68 65 |urce fil|e..* The|
|000009c0| 20 73 79 6d 62 6f 6c 20 | 69 73 20 49 4d 50 4f 52 | symbol |is IMPOR|
|000009d0| 54 65 64 20 61 6e 64 20 | 61 73 73 6f 63 69 61 74 |Ted and |associat|
|000009e0| 65 64 20 77 69 74 68 20 | 74 68 65 20 6f 72 69 67 |ed with |the orig|
|000009f0| 69 6e 61 6c 20 74 65 6d | 70 6c 61 74 65 0d 2a 20 |inal tem|plate.* |
|00000a00| 61 73 20 64 65 66 69 6e | 65 64 20 69 6e 20 74 68 |as defin|ed in th|
|00000a10| 65 20 41 53 61 6d 70 6c | 65 2e 69 6e 63 31 2e 61 |e ASampl|e.inc1.a|
|00000a20| 20 66 69 6c 65 2e 20 20 | 54 68 69 73 20 61 6c 6c | file. |This all|
|00000a30| 6f 77 73 20 75 73 20 74 | 6f 20 75 73 65 0d 2a 20 |ows us t|o use.* |
|00000a40| 74 68 65 20 69 64 65 6e | 74 69 66 69 65 72 73 20 |the iden|tifiers |
|00000a50| 69 6e 20 74 68 65 20 74 | 65 6d 70 6c 61 74 65 2e |in the t|emplate.|
|00000a60| 0d 0d 09 09 49 4d 50 4f | 52 54 09 51 44 3a 51 44 |....IMPO|RT.QD:QD|
|00000a70| 47 6c 6f 62 61 6c 73 0d | 09 09 49 4d 50 4f 52 54 |Globals.|..IMPORT|
|00000a80| 09 47 3a 41 70 70 47 6c | 6f 62 61 6c 73 0d 0d 0d |.G:AppGl|obals...|
|00000a90| 2a 20 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |* ======|========|
|00000aa0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000ab0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000ac0| 3d 3d 0d 2a 20 46 55 4e | 43 54 49 4f 4e 20 47 6f |==.* FUN|CTION Go|
|00000ad0| 47 65 74 52 65 63 74 28 | 72 65 63 74 49 44 3a 20 |GetRect(|rectID: |
|00000ae0| 49 4e 54 45 47 45 52 3b | 20 56 41 52 20 74 68 65 |INTEGER;| VAR the|
|00000af0| 52 65 63 74 3a 20 52 65 | 63 74 29 20 3a 20 42 4f |Rect: Re|ct) : BO|
|00000b00| 4f 4c 45 41 4e 3b 0d 2a | 20 3d 3d 3d 3d 3d 3d 3d |OLEAN;.*| =======|
|00000b10| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000b20| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000b30| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 0d 2a 20 54 68 69 73 |========|=.* This|
|00000b40| 20 75 74 69 6c 69 74 79 | 20 6c 6f 61 64 73 20 74 | utility| loads t|
|00000b50| 68 65 20 67 6c 6f 62 61 | 6c 20 72 65 63 74 61 6e |he globa|l rectan|
|00000b60| 67 6c 65 73 20 74 68 61 | 74 20 61 72 65 20 75 73 |gles tha|t are us|
|00000b70| 65 64 20 62 79 20 74 68 | 65 20 77 69 6e 64 6f 77 |ed by th|e window|
|00000b80| 0d 2a 20 64 72 61 77 69 | 6e 67 20 72 6f 75 74 69 |.* drawi|ng routi|
|00000b90| 6e 65 73 2e 20 49 74 20 | 73 68 6f 77 73 20 68 6f |nes. It |shows ho|
|00000ba0| 77 20 74 68 65 20 72 65 | 73 6f 75 72 63 65 20 6d |w the re|source m|
|00000bb0| 61 6e 61 67 65 72 20 63 | 61 6e 20 62 65 20 75 73 |anager c|an be us|
|00000bc0| 65 64 20 74 6f 20 68 6f | 6c 64 0d 2a 20 76 61 6c |ed to ho|ld.* val|
|00000bd0| 75 65 73 20 69 6e 20 61 | 20 63 6f 6e 76 65 6e 69 |ues in a| conveni|
|00000be0| 65 6e 74 20 6d 61 6e 6e | 65 72 2e 20 54 68 65 73 |ent mann|er. Thes|
|00000bf0| 65 20 76 61 6c 75 65 73 | 20 61 72 65 20 74 68 65 |e values| are the|
|00000c00| 6e 20 65 61 73 69 6c 79 | 20 61 6c 74 65 72 65 64 |n easily| altered|
|00000c10| 20 77 69 74 68 6f 75 74 | 0d 2a 20 68 61 76 69 6e | without|.* havin|
|00000c20| 67 20 74 6f 20 72 65 2d | 63 6f 6d 70 69 6c 65 20 |g to re-|compile |
|00000c30| 74 68 65 20 73 6f 75 72 | 63 65 20 63 6f 64 65 2e |the sour|ce code.|
|00000c40| 20 47 6f 47 65 74 52 65 | 63 74 20 77 69 6c 6c 20 | GoGetRe|ct will |
|00000c50| 72 65 74 75 72 6e 20 61 | 20 42 4f 4f 4c 45 41 4e |return a| BOOLEAN|
|00000c60| 20 74 68 61 74 0d 2a 20 | 69 6e 64 69 63 61 74 65 | that.* |indicate|
|00000c70| 73 20 69 66 20 69 74 20 | 77 61 73 20 73 75 63 63 |s if it |was succ|
|00000c80| 65 73 73 66 75 6c 20 69 | 6e 20 67 65 74 74 69 6e |essful i|n gettin|
|00000c90| 67 20 74 68 65 20 72 65 | 63 74 61 6e 67 6c 65 2e |g the re|ctangle.|
|00000ca0| 0d 0d 2a 20 41 30 20 69 | 73 20 62 65 69 6e 67 20 |..* A0 i|s being |
|00000cb0| 75 73 65 64 20 66 6f 72 | 20 72 65 73 6f 75 72 63 |used for| resourc|
|00000cc0| 65 20 68 61 6e 64 6c 65 | 2e 0d 0d 09 09 53 45 47 |e handle|.....SEG|
|00000cd0| 09 27 49 6e 69 74 69 61 | 6c 69 7a 65 27 09 09 3b |.'Initia|lize'..;|
|00000ce0| 20 63 61 73 65 20 73 65 | 6e 73 69 74 69 76 65 0d | case se|nsitive.|
|00000cf0| 47 6f 47 65 74 52 65 63 | 74 09 46 55 4e 43 09 45 |GoGetRec|t.FUNC.E|
|00000d00| 58 50 4f 52 54 09 09 09 | 3b 20 61 6e 79 20 73 6f |XPORT...|; any so|
|00000d10| 75 72 63 65 20 66 69 6c | 65 20 63 61 6e 20 75 73 |urce fil|e can us|
|00000d20| 65 20 74 68 69 73 20 72 | 6f 75 74 69 6e 65 0d 0d |e this r|outine..|
|00000d30| 53 74 61 63 6b 46 72 61 | 6d 65 09 52 45 43 4f 52 |StackFra|me.RECOR|
|00000d40| 44 09 7b 41 36 4c 69 6e | 6b 7d 2c 44 45 43 52 09 |D.{A6Lin|k},DECR.|
|00000d50| 09 3b 20 62 75 69 6c 64 | 20 61 20 73 74 61 63 6b |.; build| a stack|
|00000d60| 20 66 72 61 6d 65 20 72 | 65 63 6f 72 64 0d 52 65 | frame r|ecord.Re|
|00000d70| 73 75 6c 74 09 09 44 53 | 2e 57 09 31 09 09 09 3b |sult..DS|.W.1...;|
|00000d80| 20 66 75 6e 63 74 69 6f | 6e 27 73 20 72 65 73 75 | functio|n's resu|
|00000d90| 6c 74 20 72 65 74 75 72 | 6e 65 64 20 74 6f 20 63 |lt retur|ned to c|
|00000da0| 61 6c 6c 65 72 0d 50 61 | 72 61 6d 42 65 67 69 6e |aller.Pa|ramBegin|
|00000db0| 09 45 51 55 09 2a 09 09 | 09 3b 20 73 74 61 72 74 |.EQU.*..|.; start|
|00000dc0| 20 70 61 72 61 6d 65 74 | 65 72 73 20 61 66 74 65 | paramet|ers afte|
|00000dd0| 72 20 74 68 69 73 20 70 | 6f 69 6e 74 0d 52 65 63 |r this p|oint.Rec|
|00000de0| 74 49 44 09 09 44 53 2e | 57 09 31 09 09 09 3b 20 |tID..DS.|W.1...; |
|00000df0| 72 65 73 6f 75 72 63 65 | 20 49 44 20 6f 66 20 72 |resource| ID of r|
|00000e00| 65 63 74 20 70 61 73 73 | 65 64 20 62 79 20 63 61 |ect pass|ed by ca|
|00000e10| 6c 6c 65 72 0d 54 68 65 | 52 65 63 74 09 09 44 53 |ller.The|Rect..DS|
|00000e20| 2e 4c 09 31 09 09 09 3b | 20 74 68 65 20 72 65 63 |.L.1...;| the rec|
|00000e30| 74 27 73 20 70 6f 69 6e | 74 65 72 20 70 61 73 73 |t's poin|ter pass|
|00000e40| 65 64 20 62 79 20 63 61 | 6c 6c 65 72 0d 50 61 72 |ed by ca|ller.Par|
|00000e50| 61 6d 53 69 7a 65 09 45 | 51 55 09 50 61 72 61 6d |amSize.E|QU.Param|
|00000e60| 42 65 67 69 6e 2d 2a 09 | 09 3b 20 73 69 7a 65 20 |Begin-*.|.; size |
|00000e70| 6f 66 20 61 6c 6c 20 74 | 68 65 20 70 61 73 73 65 |of all t|he passe|
|00000e80| 64 20 70 61 72 61 6d 65 | 74 65 72 73 0d 52 65 74 |d parame|ters.Ret|
|00000e90| 41 64 64 72 20 09 44 53 | 2e 4c 09 31 09 09 09 3b |Addr .DS|.L.1...;|
|00000ea0| 20 70 6c 61 63 65 20 68 | 6f 6c 64 65 72 20 66 6f | place h|older fo|
|00000eb0| 72 20 72 65 74 75 72 6e | 20 61 64 64 72 65 73 73 |r return| address|
|00000ec0| 0d 41 36 4c 69 6e 6b 09 | 09 44 53 2e 4c 09 31 09 |.A6Link.|.DS.L.1.|
|00000ed0| 09 09 3b 20 70 6c 61 63 | 65 20 68 6f 6c 64 65 72 |..; plac|e holder|
|00000ee0| 20 66 6f 72 20 41 36 20 | 6c 69 6e 6b 0d 4c 6f 63 | for A6 |link.Loc|
|00000ef0| 61 6c 53 69 7a 65 09 45 | 51 55 20 09 2a 09 09 09 |alSize.E|QU .*...|
|00000f00| 3b 20 73 69 7a 65 20 6f | 66 20 61 6c 6c 20 74 68 |; size o|f all th|
|00000f10| 65 20 6c 6f 63 61 6c 20 | 76 61 72 69 61 62 6c 65 |e local |variable|
|00000f20| 73 0d 09 09 45 4e 44 52 | 0d 0d 09 09 57 49 54 48 |s...ENDR|....WITH|
|00000f30| 09 53 74 61 63 6b 46 72 | 61 6d 65 09 09 3b 20 63 |.StackFr|ame..; c|
|00000f40| 6f 76 65 72 20 6f 75 72 | 20 6c 6f 63 61 6c 20 73 |over our| local s|
|00000f50| 74 61 63 6b 20 66 72 61 | 6d 65 0d 09 09 4c 49 4e |tack fra|me...LIN|
|00000f60| 4b 09 41 36 2c 23 4c 6f | 63 61 6c 53 69 7a 65 09 |K.A6,#Lo|calSize.|
|00000f70| 09 3b 20 61 6c 6c 6f 63 | 61 74 65 20 6f 75 72 20 |.; alloc|ate our |
|00000f80| 6c 6f 63 61 6c 20 73 74 | 61 63 6b 20 66 72 61 6d |local st|ack fram|
|00000f90| 65 0d 0d 09 09 4d 4f 56 | 45 2e 57 09 23 46 61 6c |e....MOV|E.W.#Fal|
|00000fa0| 73 65 2c 52 65 73 75 6c | 74 28 41 36 29 09 3b 20 |se,Resul|t(A6).; |
|00000fb0| 69 6e 69 74 69 61 6c 69 | 7a 65 20 66 75 6e 63 74 |initiali|ze funct|
|00000fc0| 69 6f 6e 27 73 20 72 65 | 73 75 6c 74 0d 0d 09 09 |ion's re|sult....|
|00000fd0| 43 4c 52 2e 4c 09 2d 28 | 53 50 29 09 09 09 3b 20 |CLR.L.-(|SP)...; |
|00000fe0| 63 72 65 61 74 65 20 73 | 70 61 63 65 20 66 6f 72 |create s|pace for|
|00000ff0| 20 72 65 73 75 6c 74 0d | 09 09 4d 4f 56 45 2e 4c | result.|..MOVE.L|
|00001000| 09 23 27 52 45 43 54 27 | 2c 2d 28 53 50 29 0d 09 |.#'RECT'|,-(SP)..|
|00001010| 09 4d 4f 56 45 2e 57 09 | 52 65 63 74 49 44 28 41 |.MOVE.W.|RectID(A|
|00001020| 36 29 2c 2d 28 53 50 29 | 09 3b 20 67 65 74 20 74 |6),-(SP)|.; get t|
|00001030| 68 65 20 73 74 6f 70 20 | 6c 69 67 68 74 27 73 20 |he stop |light's |
|00001040| 72 65 63 74 0d 09 09 5f | 47 65 74 52 65 73 6f 75 |rect..._|GetResou|
|00001050| 72 63 65 0d 09 09 4d 4f | 56 45 41 2e 4c 09 28 53 |rce...MO|VEA.L.(S|
|00001060| 50 29 2b 2c 41 30 09 09 | 3b 20 68 61 6e 64 6c 65 |P)+,A0..|; handle|
|00001070| 20 74 6f 20 52 45 43 54 | 20 72 65 73 6f 75 72 63 | to RECT| resourc|
|00001080| 65 20 69 6e 20 41 30 0d | 09 09 43 4d 50 41 2e 4c |e in A0.|..CMPA.L|
|00001090| 09 23 4e 49 4c 2c 41 30 | 09 09 09 3b 20 74 65 73 |.#NIL,A0|...; tes|
|000010a0| 74 20 66 6f 72 20 4e 49 | 4c 20 68 61 6e 64 6c 65 |t for NI|L handle|
|000010b0| 0d 09 09 42 45 51 2e 53 | 09 45 78 69 74 09 09 09 |...BEQ.S|.Exit...|
|000010c0| 3b 20 64 69 64 6e 27 74 | 20 67 65 74 20 72 65 73 |; didn't| get res|
|000010d0| 6f 75 72 63 65 2c 20 65 | 78 69 74 20 74 68 69 73 |ource, e|xit this|
|000010e0| 20 70 72 6f 63 65 64 75 | 72 65 0d 0d 0d 2a 20 2d | procedu|re...* -|
|000010f0| 2d 2d 2d 2d 2d 2d 2d 20 | 43 4f 50 59 20 54 48 45 |------- |COPY THE|
|00001100| 20 52 45 53 4f 55 52 43 | 45 20 54 4f 20 54 48 45 | RESOURC|E TO THE|
|00001110| 20 52 45 43 54 20 2d 2d | 2d 2d 2d 2d 2d 2d 0d 0d | RECT --|------..|
|00001120| 09 09 4d 4f 56 45 2e 57 | 09 23 54 72 75 65 2c 52 |..MOVE.W|.#True,R|
|00001130| 65 73 75 6c 74 28 41 36 | 29 09 3b 20 77 65 20 67 |esult(A6|).; we g|
|00001140| 6f 74 20 74 68 65 20 72 | 65 73 6f 75 72 63 65 2c |ot the r|esource,|
|00001150| 20 72 65 74 75 72 6e 20 | 74 72 75 65 0d 09 09 4d | return |true...M|
|00001160| 4f 56 45 41 2e 4c 09 28 | 41 30 29 2c 41 30 09 09 |OVEA.L.(|A0),A0..|
|00001170| 09 3b 20 70 6f 69 6e 74 | 65 72 20 74 6f 20 52 45 |.; point|er to RE|
|00001180| 43 54 20 72 65 73 6f 75 | 72 63 65 20 69 6e 20 41 |CT resou|rce in A|
|00001190| 30 0d 09 09 4d 4f 56 45 | 41 2e 4c 09 54 68 65 52 |0...MOVE|A.L.TheR|
|000011a0| 65 63 74 28 41 36 29 2c | 41 31 09 09 3b 20 70 6f |ect(A6),|A1..; po|
|000011b0| 69 6e 74 65 72 20 74 6f | 20 74 68 65 20 64 65 73 |inter to| the des|
|000011c0| 74 2e 20 52 45 43 54 20 | 69 6e 20 41 31 0d 09 09 |t. RECT |in A1...|
|000011d0| 4d 4f 56 45 2e 4c 09 74 | 6f 70 4c 65 66 74 28 41 |MOVE.L.t|opLeft(A|
|000011e0| 30 29 2c 74 6f 70 4c 65 | 66 74 28 41 31 29 09 3b |0),topLe|ft(A1).;|
|000011f0| 20 63 6f 70 79 20 74 6f | 20 74 68 65 20 72 65 63 | copy to| the rec|
|00001200| 74 20 70 61 73 73 65 64 | 20 74 6f 20 75 73 0d 09 |t passed| to us..|
|00001210| 09 4d 4f 56 45 2e 4c 09 | 62 6f 74 52 69 67 68 74 |.MOVE.L.|botRight|
|00001220| 28 41 30 29 2c 62 6f 74 | 52 69 67 68 74 28 41 31 |(A0),bot|Right(A1|
|00001230| 29 0d 0d 45 78 69 74 09 | 09 55 4e 4c 4b 09 41 36 |)..Exit.|.UNLK.A6|
|00001240| 09 09 09 3b 20 64 65 73 | 74 72 6f 79 20 74 68 65 |...; des|troy the|
|00001250| 20 6c 69 6e 6b 0d 09 09 | 4d 4f 56 45 41 2e 4c 09 | link...|MOVEA.L.|
|00001260| 28 53 50 29 2b 2c 41 30 | 09 09 3b 20 70 75 6c 6c |(SP)+,A0|..; pull|
|00001270| 20 6f 66 66 20 74 68 65 | 20 72 65 74 75 72 6e 20 | off the| return |
|00001280| 61 64 64 72 65 73 73 0d | 09 09 41 44 44 41 2e 4c |address.|..ADDA.L|
|00001290| 09 23 50 61 72 61 6d 53 | 69 7a 65 2c 53 50 09 09 |.#ParamS|ize,SP..|
|000012a0| 3b 20 73 74 72 69 70 20 | 61 6c 6c 20 6f 66 20 74 |; strip |all of t|
|000012b0| 68 65 20 63 61 6c 6c 65 | 72 27 73 20 70 61 72 61 |he calle|r's para|
|000012c0| 6d 65 74 65 72 73 0d 09 | 09 4a 4d 50 09 28 41 30 |meters..|.JMP.(A0|
|000012d0| 29 09 09 09 3b 20 72 65 | 74 75 72 6e 20 74 6f 20 |)...; re|turn to |
|000012e0| 74 68 65 20 63 61 6c 6c | 65 72 0d 0d 09 09 44 62 |the call|er....Db|
|000012f0| 67 49 6e 66 6f 09 47 65 | 74 52 65 63 74 09 09 09 |gInfo.Ge|tRect...|
|00001300| 3b 20 74 68 69 73 20 6e | 61 6d 65 20 77 69 6c 6c |; this n|ame will|
|00001310| 20 61 70 70 65 61 72 20 | 69 6e 20 74 68 65 20 64 | appear |in the d|
|00001320| 65 62 75 67 67 65 72 0d | 09 09 45 4e 44 46 0d 0d |ebugger.|..ENDF..|
|00001330| 2a 20 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |* ======|========|
|00001340| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001350| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001360| 3d 3d 0d 2a 20 46 55 4e | 43 54 49 4f 4e 20 49 73 |==.* FUN|CTION Is|
|00001370| 44 41 57 69 6e 64 6f 77 | 28 77 69 6e 64 6f 77 3a |DAWindow|(window:|
|00001380| 20 57 69 6e 64 6f 77 50 | 74 72 29 3a 20 42 4f 4f | WindowP|tr): BOO|
|00001390| 4c 45 41 4e 3b 0d 2a 20 | 3d 3d 3d 3d 3d 3d 3d 3d |LEAN;.* |========|
|000013a0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000013b0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000013c0| 3d 3d 3d 3d 3d 3d 3d 3d | 0d 2a 20 43 68 65 63 6b |========|.* Check|
|000013d0| 20 69 66 20 61 20 77 69 | 6e 64 6f 77 20 62 65 6c | if a wi|ndow bel|
|000013e0| 6f 6e 67 73 20 74 6f 20 | 61 20 64 65 73 6b 20 61 |ongs to |a desk a|
|000013f0| 63 63 65 73 73 6f 72 79 | 2e 20 20 44 41 20 77 69 |ccessory|. DA wi|
|00001400| 6e 64 6f 77 20 68 61 73 | 20 61 20 6e 65 67 69 74 |ndow has| a negit|
|00001410| 69 76 65 20 6b 69 6e 64 | 2e 0d 0d 09 09 53 45 47 |ive kind|.....SEG|
|00001420| 09 27 4d 61 69 6e 27 0d | 49 73 44 41 57 69 6e 64 |.'Main'.|IsDAWind|
|00001430| 6f 77 09 46 55 4e 43 09 | 45 58 50 4f 52 54 09 09 |ow.FUNC.|EXPORT..|
|00001440| 09 3b 20 61 6e 79 20 73 | 6f 75 72 63 65 20 66 69 |.; any s|ource fi|
|00001450| 6c 65 20 63 61 6e 20 75 | 73 65 20 74 68 69 73 20 |le can u|se this |
|00001460| 72 6f 75 74 69 6e 65 0d | 0d 53 74 61 63 6b 46 72 |routine.|.StackFr|
|00001470| 61 6d 65 09 52 45 43 4f | 52 44 09 7b 41 36 4c 69 |ame.RECO|RD.{A6Li|
|00001480| 6e 6b 7d 2c 44 45 43 52 | 09 09 3b 20 62 75 69 6c |nk},DECR|..; buil|
|00001490| 64 20 61 20 73 74 61 63 | 6b 20 66 72 61 6d 65 20 |d a stac|k frame |
|000014a0| 72 65 63 6f 72 64 0d 52 | 65 73 75 6c 74 09 09 44 |record.R|esult..D|
|000014b0| 53 2e 57 09 31 09 09 09 | 3b 20 66 75 6e 63 74 69 |S.W.1...|; functi|
|000014c0| 6f 6e 27 73 20 72 65 73 | 75 6c 74 20 72 65 74 75 |on's res|ult retu|
|000014d0| 72 6e 65 64 20 74 6f 20 | 63 61 6c 6c 65 72 0d 50 |rned to |caller.P|
|000014e0| 61 72 61 6d 42 65 67 69 | 6e 09 45 51 55 09 2a 09 |aramBegi|n.EQU.*.|
|000014f0| 09 09 3b 20 73 74 61 72 | 74 20 70 61 72 61 6d 65 |..; star|t parame|
|00001500| 74 65 72 73 20 61 66 74 | 65 72 20 74 68 69 73 20 |ters aft|er this |
|00001510| 70 6f 69 6e 74 0d 54 68 | 65 57 69 6e 64 6f 77 09 |point.Th|eWindow.|
|00001520| 44 53 2e 4c 09 31 09 09 | 09 3b 20 61 20 77 69 6e |DS.L.1..|.; a win|
|00001530| 64 6f 77 27 73 20 70 6f | 69 6e 74 65 72 20 70 61 |dow's po|inter pa|
|00001540| 73 73 65 64 20 62 79 20 | 63 61 6c 6c 65 72 0d 50 |ssed by |caller.P|
|00001550| 61 72 61 6d 53 69 7a 65 | 09 45 51 55 09 50 61 72 |aramSize|.EQU.Par|
|00001560| 61 6d 42 65 67 69 6e 2d | 2a 09 09 3b 20 73 69 7a |amBegin-|*..; siz|
|00001570| 65 20 6f 66 20 61 6c 6c | 20 74 68 65 20 70 61 73 |e of all| the pas|
|00001580| 73 65 64 20 70 61 72 61 | 6d 65 74 65 72 73 0d 52 |sed para|meters.R|
|00001590| 65 74 41 64 64 72 20 09 | 44 53 2e 4c 09 31 09 09 |etAddr .|DS.L.1..|
|000015a0| 09 3b 20 70 6c 61 63 65 | 20 68 6f 6c 64 65 72 20 |.; place| holder |
|000015b0| 66 6f 72 20 72 65 74 75 | 72 6e 20 61 64 64 72 65 |for retu|rn addre|
|000015c0| 73 73 0d 41 36 4c 69 6e | 6b 09 09 44 53 2e 4c 09 |ss.A6Lin|k..DS.L.|
|000015d0| 31 09 09 09 3b 20 70 6c | 61 63 65 20 68 6f 6c 64 |1...; pl|ace hold|
|000015e0| 65 72 20 66 6f 72 20 41 | 36 20 6c 69 6e 6b 0d 4c |er for A|6 link.L|
|000015f0| 6f 63 61 6c 53 69 7a 65 | 09 45 51 55 20 09 2a 09 |ocalSize|.EQU .*.|
|00001600| 09 09 3b 20 73 69 7a 65 | 20 6f 66 20 61 6c 6c 20 |..; size| of all |
|00001610| 74 68 65 20 6c 6f 63 61 | 6c 20 76 61 72 69 61 62 |the loca|l variab|
|00001620| 6c 65 73 0d 09 09 45 4e | 44 52 0d 0d 09 09 57 49 |les...EN|DR....WI|
|00001630| 54 48 09 53 74 61 63 6b | 46 72 61 6d 65 09 09 3b |TH.Stack|Frame..;|
|00001640| 20 63 6f 76 65 72 20 6f | 75 72 20 6c 6f 63 61 6c | cover o|ur local|
|00001650| 20 73 74 61 63 6b 20 66 | 72 61 6d 65 0d 09 09 4c | stack f|rame...L|
|00001660| 49 4e 4b 09 41 36 2c 23 | 4c 6f 63 61 6c 53 69 7a |INK.A6,#|LocalSiz|
|00001670| 65 09 09 3b 20 61 6c 6c | 6f 63 61 74 65 20 6f 75 |e..; all|ocate ou|
|00001680| 72 20 6c 6f 63 61 6c 20 | 73 74 61 63 6b 20 66 72 |r local |stack fr|
|00001690| 61 6d 65 0d 0d 09 09 4d | 4f 56 45 2e 57 09 23 46 |ame....M|OVE.W.#F|
|000016a0| 61 6c 73 65 2c 52 65 73 | 75 6c 74 28 41 36 29 09 |alse,Res|ult(A6).|
|000016b0| 3b 20 66 69 72 73 74 2c | 20 69 6e 69 74 69 61 6c |; first,| initial|
|000016c0| 69 7a 65 20 74 68 65 20 | 72 65 73 75 6c 74 0d 09 |ize the |result..|
|000016d0| 09 43 4d 50 49 2e 4c 09 | 23 4e 49 4c 2c 54 68 65 |.CMPI.L.|#NIL,The|
|000016e0| 57 69 6e 64 6f 77 28 41 | 36 29 09 3b 20 76 61 6c |Window(A|6).; val|
|000016f0| 69 64 20 70 6f 69 6e 74 | 65 72 3f 0d 09 09 42 45 |id point|er?...BE|
|00001700| 51 2e 53 09 45 78 69 74 | 09 09 09 3b 20 69 74 20 |Q.S.Exit|...; it |
|00001710| 77 61 73 20 4e 49 4c 2c | 20 6c 6f 6f 6b 20 6f 75 |was NIL,| look ou|
|00001720| 74 21 0d 0d 09 09 4d 4f | 56 45 41 2e 4c 09 54 68 |t!....MO|VEA.L.Th|
|00001730| 65 57 69 6e 64 6f 77 28 | 41 36 29 2c 41 30 09 3b |eWindow(|A6),A0.;|
|00001740| 20 67 65 74 20 74 68 65 | 20 77 69 6e 64 6f 77 20 | get the| window |
|00001750| 70 6f 69 6e 74 65 72 0d | 09 09 4d 4f 56 45 2e 57 |pointer.|..MOVE.W|
|00001760| 09 57 69 6e 64 6f 77 4b | 69 6e 64 28 41 30 29 2c |.WindowK|ind(A0),|
|00001770| 44 30 09 3b 20 77 68 61 | 74 20 6b 69 6e 64 20 6f |D0.; wha|t kind o|
|00001780| 66 20 77 69 6e 64 6f 77 | 20 77 61 73 20 69 74 3f |f window| was it?|
|00001790| 0d 09 09 42 50 4c 2e 53 | 09 45 78 69 74 09 09 09 |...BPL.S|.Exit...|
|000017a0| 3b 20 44 41 20 77 69 6e | 64 6f 77 73 20 61 72 65 |; DA win|dows are|
|000017b0| 20 6e 65 67 69 74 69 76 | 65 0d 0d 09 09 4d 4f 56 | negitiv|e....MOV|
|000017c0| 45 2e 57 09 23 54 72 75 | 65 2c 52 65 73 75 6c 74 |E.W.#Tru|e,Result|
|000017d0| 28 41 36 29 09 3b 20 72 | 65 74 75 72 6e 20 74 72 |(A6).; r|eturn tr|
|000017e0| 75 65 20 74 6f 20 74 68 | 65 20 63 61 6c 6c 65 72 |ue to th|e caller|
|000017f0| 0d 45 78 69 74 09 09 55 | 4e 4c 4b 09 41 36 09 09 |.Exit..U|NLK.A6..|
|00001800| 09 3b 20 64 65 73 74 72 | 6f 79 20 74 68 65 20 6c |.; destr|oy the l|
|00001810| 69 6e 6b 0d 09 09 4d 4f | 56 45 41 2e 4c 09 28 53 |ink...MO|VEA.L.(S|
|00001820| 50 29 2b 2c 41 30 09 09 | 3b 20 70 75 6c 6c 20 6f |P)+,A0..|; pull o|
|00001830| 66 66 20 74 68 65 20 72 | 65 74 75 72 6e 20 61 64 |ff the r|eturn ad|
|00001840| 64 72 65 73 73 0d 09 09 | 41 44 44 41 2e 4c 09 23 |dress...|ADDA.L.#|
|00001850| 50 61 72 61 6d 53 69 7a | 65 2c 53 50 09 09 3b 20 |ParamSiz|e,SP..; |
|00001860| 73 74 72 69 70 20 61 6c | 6c 20 6f 66 20 74 68 65 |strip al|l of the|
|00001870| 20 63 61 6c 6c 65 72 27 | 73 20 70 61 72 61 6d 65 | caller'|s parame|
|00001880| 74 65 72 73 0d 09 09 4a | 4d 50 09 28 41 30 29 09 |ters...J|MP.(A0).|
|00001890| 09 09 3b 20 72 65 74 75 | 72 6e 20 74 6f 20 74 68 |..; retu|rn to th|
|000018a0| 65 20 63 61 6c 6c 65 72 | 0d 0d 09 09 44 62 67 49 |e caller|....DbgI|
|000018b0| 6e 66 6f 09 49 73 44 41 | 57 69 6e 64 09 09 3b 20 |nfo.IsDA|Wind..; |
|000018c0| 74 68 69 73 20 6e 61 6d | 65 20 77 69 6c 6c 20 61 |this nam|e will a|
|000018d0| 70 70 65 61 72 20 69 6e | 20 74 68 65 20 64 65 62 |ppear in| the deb|
|000018e0| 75 67 67 65 72 0d 09 09 | 45 4e 44 46 0d 0d 2a 20 |ugger...|ENDF..* |
|000018f0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001900| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001910| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001920| 0d 2a 20 46 55 4e 43 54 | 49 4f 4e 20 49 73 41 70 |.* FUNCT|ION IsAp|
|00001930| 70 57 69 6e 64 6f 77 28 | 77 69 6e 64 6f 77 3a 20 |pWindow(|window: |
|00001940| 57 69 6e 64 6f 77 50 74 | 72 29 3a 20 42 4f 4f 4c |WindowPt|r): BOOL|
|00001950| 45 41 4e 3b 0d 2a 20 3d | 3d 3d 3d 3d 3d 3d 3d 3d |EAN;.* =|========|
|00001960| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001970| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001980| 3d 3d 3d 3d 3d 3d 3d 0d | 2a 20 43 68 65 63 6b 20 |=======.|* Check |
|00001990| 74 6f 20 73 65 65 20 69 | 66 20 61 20 77 69 6e 64 |to see i|f a wind|
|000019a0| 6f 77 20 62 65 6c 6f 6e | 67 73 20 74 6f 20 74 68 |ow belon|gs to th|
|000019b0| 65 20 61 70 70 6c 69 63 | 61 74 69 6f 6e 2e 20 49 |e applic|ation. I|
|000019c0| 66 20 74 68 65 20 77 69 | 6e 64 6f 77 20 70 6f 69 |f the wi|ndow poi|
|000019d0| 6e 74 65 72 0d 2a 20 70 | 61 73 73 65 64 20 77 61 |nter.* p|assed wa|
|000019e0| 73 20 4e 49 4c 2c 20 74 | 68 65 6e 20 69 74 20 63 |s NIL, t|hen it c|
|000019f0| 6f 75 6c 64 20 6e 6f 74 | 20 62 65 20 61 6e 20 61 |ould not| be an a|
|00001a00| 70 70 6c 69 63 61 74 69 | 6f 6e 20 77 69 6e 64 6f |pplicati|on windo|
|00001a10| 77 2e 20 57 69 6e 64 6f | 77 4b 69 6e 64 73 0d 2a |w. Windo|wKinds.*|
|00001a20| 20 74 68 61 74 20 61 72 | 65 20 6e 65 67 61 74 69 | that ar|e negati|
|00001a30| 76 65 20 62 65 6c 6f 6e | 67 20 74 6f 20 74 68 65 |ve belon|g to the|
|00001a40| 20 73 79 73 74 65 6d 20 | 61 6e 64 20 77 69 6e 64 | system |and wind|
|00001a50| 6f 77 4b 69 6e 64 73 20 | 6c 65 73 73 20 74 68 61 |owKinds |less tha|
|00001a60| 6e 20 75 73 65 72 4b 69 | 6e 64 0d 2a 20 61 72 65 |n userKi|nd.* are|
|00001a70| 20 72 65 73 65 72 76 65 | 64 20 62 79 20 41 70 70 | reserve|d by App|
|00001a80| 6c 65 20 65 78 63 65 70 | 74 20 66 6f 72 20 77 69 |le excep|t for wi|
|00001a90| 6e 64 6f 77 4b 69 6e 64 | 73 20 65 71 75 61 6c 20 |ndowKind|s equal |
|00001aa0| 74 6f 20 64 69 61 6c 6f | 67 4b 69 6e 64 2c 20 77 |to dialo|gKind, w|
|00001ab0| 68 69 63 68 0d 2a 20 6d | 65 61 6e 73 20 69 74 20 |hich.* m|eans it |
|00001ac0| 69 73 20 61 20 64 69 61 | 6c 6f 67 2e 0d 0d 09 09 |is a dia|log.....|
|00001ad0| 53 45 47 09 27 4d 61 69 | 6e 27 0d 49 73 41 70 70 |SEG.'Mai|n'.IsApp|
|00001ae0| 57 69 6e 64 6f 77 09 46 | 55 4e 43 09 45 58 50 4f |Window.F|UNC.EXPO|
|00001af0| 52 54 09 09 09 3b 20 61 | 6e 79 20 73 6f 75 72 63 |RT...; a|ny sourc|
|00001b00| 65 20 66 69 6c 65 20 63 | 61 6e 20 75 73 65 20 74 |e file c|an use t|
|00001b10| 68 69 73 20 72 6f 75 74 | 69 6e 65 0d 0d 53 74 61 |his rout|ine..Sta|
|00001b20| 63 6b 46 72 61 6d 65 09 | 52 45 43 4f 52 44 09 7b |ckFrame.|RECORD.{|
|00001b30| 41 36 4c 69 6e 6b 7d 2c | 44 45 43 52 09 09 3b 20 |A6Link},|DECR..; |
|00001b40| 62 75 69 6c 64 20 61 20 | 73 74 61 63 6b 20 66 72 |build a |stack fr|
|00001b50| 61 6d 65 20 72 65 63 6f | 72 64 0d 52 65 73 75 6c |ame reco|rd.Resul|
|00001b60| 74 09 09 44 53 2e 57 09 | 31 09 09 09 3b 20 66 75 |t..DS.W.|1...; fu|
|00001b70| 6e 63 74 69 6f 6e 27 73 | 20 72 65 73 75 6c 74 20 |nction's| result |
|00001b80| 72 65 74 75 72 6e 65 64 | 20 74 6f 20 63 61 6c 6c |returned| to call|
|00001b90| 65 72 0d 50 61 72 61 6d | 42 65 67 69 6e 09 45 51 |er.Param|Begin.EQ|
|00001ba0| 55 09 2a 09 09 09 3b 20 | 73 74 61 72 74 20 70 61 |U.*...; |start pa|
|00001bb0| 72 61 6d 65 74 65 72 73 | 20 61 66 74 65 72 20 74 |rameters| after t|
|00001bc0| 68 69 73 20 70 6f 69 6e | 74 0d 54 68 65 57 69 6e |his poin|t.TheWin|
|00001bd0| 64 6f 77 09 44 53 2e 4c | 09 31 09 09 09 3b 20 61 |dow.DS.L|.1...; a|
|00001be0| 20 77 69 6e 64 6f 77 27 | 73 20 70 6f 69 6e 74 65 | window'|s pointe|
|00001bf0| 72 20 70 61 73 73 65 64 | 20 62 79 20 63 61 6c 6c |r passed| by call|
|00001c00| 65 72 0d 50 61 72 61 6d | 53 69 7a 65 09 45 51 55 |er.Param|Size.EQU|
|00001c10| 09 50 61 72 61 6d 42 65 | 67 69 6e 2d 2a 09 09 3b |.ParamBe|gin-*..;|
|00001c20| 20 73 69 7a 65 20 6f 66 | 20 61 6c 6c 20 74 68 65 | size of| all the|
|00001c30| 20 70 61 73 73 65 64 20 | 70 61 72 61 6d 65 74 65 | passed |paramete|
|00001c40| 72 73 0d 52 65 74 41 64 | 64 72 20 09 44 53 2e 4c |rs.RetAd|dr .DS.L|
|00001c50| 09 31 09 09 09 3b 20 70 | 6c 61 63 65 20 68 6f 6c |.1...; p|lace hol|
|00001c60| 64 65 72 20 66 6f 72 20 | 72 65 74 75 72 6e 20 61 |der for |return a|
|00001c70| 64 64 72 65 73 73 0d 41 | 36 4c 69 6e 6b 09 09 44 |ddress.A|6Link..D|
|00001c80| 53 2e 4c 09 31 09 09 09 | 3b 20 70 6c 61 63 65 20 |S.L.1...|; place |
|00001c90| 68 6f 6c 64 65 72 20 66 | 6f 72 20 41 36 20 6c 69 |holder f|or A6 li|
|00001ca0| 6e 6b 0d 4c 6f 63 61 6c | 53 69 7a 65 09 45 51 55 |nk.Local|Size.EQU|
|00001cb0| 20 09 2a 09 09 09 3b 20 | 73 69 7a 65 20 6f 66 20 | .*...; |size of |
|00001cc0| 61 6c 6c 20 74 68 65 20 | 6c 6f 63 61 6c 20 76 61 |all the |local va|
|00001cd0| 72 69 61 62 6c 65 73 0d | 09 09 45 4e 44 52 0d 0d |riables.|..ENDR..|
|00001ce0| 09 09 57 49 54 48 09 53 | 74 61 63 6b 46 72 61 6d |..WITH.S|tackFram|
|00001cf0| 65 09 09 3b 20 63 6f 76 | 65 72 20 6f 75 72 20 6c |e..; cov|er our l|
|00001d00| 6f 63 61 6c 20 73 74 61 | 63 6b 20 66 72 61 6d 65 |ocal sta|ck frame|
|00001d10| 0d 09 09 4c 49 4e 4b 09 | 41 36 2c 23 4c 6f 63 61 |...LINK.|A6,#Loca|
|00001d20| 6c 53 69 7a 65 09 09 3b | 20 61 6c 6c 6f 63 61 74 |lSize..;| allocat|
|00001d30| 65 20 6f 75 72 20 6c 6f | 63 61 6c 20 73 74 61 63 |e our lo|cal stac|
|00001d40| 6b 20 66 72 61 6d 65 0d | 0d 09 09 4d 4f 56 45 2e |k frame.|...MOVE.|
|00001d50| 57 09 23 46 61 6c 73 65 | 2c 52 65 73 75 6c 74 28 |W.#False|,Result(|
|00001d60| 41 36 29 09 3b 20 66 69 | 72 73 74 2c 20 69 6e 69 |A6).; fi|rst, ini|
|00001d70| 74 69 61 6c 69 7a 65 20 | 74 68 65 20 72 65 73 75 |tialize |the resu|
|00001d80| 6c 74 0d 09 09 43 4d 50 | 49 2e 4c 09 23 4e 49 4c |lt...CMP|I.L.#NIL|
|00001d90| 2c 54 68 65 57 69 6e 64 | 6f 77 28 41 36 29 09 3b |,TheWind|ow(A6).;|
|00001da0| 20 76 61 6c 69 64 20 70 | 6f 69 6e 74 65 72 3f 0d | valid p|ointer?.|
|00001db0| 09 09 42 45 51 2e 53 09 | 45 78 69 74 09 09 09 3b |..BEQ.S.|Exit...;|
|00001dc0| 20 69 74 20 77 61 73 20 | 4e 49 4c 2c 20 6c 6f 6f | it was |NIL, loo|
|00001dd0| 6b 20 6f 75 74 21 0d 0d | 09 09 4d 4f 56 45 41 2e |k out!..|..MOVEA.|
|00001de0| 4c 09 54 68 65 57 69 6e | 64 6f 77 28 41 36 29 2c |L.TheWin|dow(A6),|
|00001df0| 41 30 09 3b 20 67 65 74 | 20 74 68 65 20 77 69 6e |A0.; get| the win|
|00001e00| 64 6f 77 20 70 6f 69 6e | 74 65 72 0d 09 09 4d 4f |dow poin|ter...MO|
|00001e10| 56 45 2e 57 09 57 69 6e | 64 6f 77 4b 69 6e 64 28 |VE.W.Win|dowKind(|
|00001e20| 41 30 29 2c 44 30 09 3b | 20 77 68 61 74 20 6b 69 |A0),D0.;| what ki|
|00001e30| 6e 64 20 6f 66 20 77 69 | 6e 64 6f 77 20 77 61 73 |nd of wi|ndow was|
|00001e40| 20 69 74 3f 0d 09 09 43 | 4d 50 49 2e 57 09 23 55 | it?...C|MPI.W.#U|
|00001e50| 73 65 72 4b 69 6e 64 2c | 44 30 09 09 3b 20 77 61 |serKind,|D0..; wa|
|00001e60| 73 20 69 74 20 61 6e 20 | 61 70 70 6c 69 63 61 74 |s it an |applicat|
|00001e70| 69 6f 6e 20 77 69 6e 64 | 6f 77 3f 0d 09 09 42 45 |ion wind|ow?...BE|
|00001e80| 51 2e 53 09 40 31 09 09 | 09 3b 20 79 65 73 2c 20 |Q.S.@1..|.; yes, |
|00001e90| 72 65 73 75 6c 74 20 69 | 73 20 67 6f 69 6e 67 20 |result i|s going |
|00001ea0| 74 6f 20 62 65 20 74 72 | 75 65 0d 0d 09 09 43 4d |to be tr|ue....CM|
|00001eb0| 50 49 2e 57 09 23 44 69 | 61 6c 6f 67 4b 69 6e 64 |PI.W.#Di|alogKind|
|00001ec0| 2c 44 30 09 09 3b 20 77 | 61 73 20 69 73 20 61 20 |,D0..; w|as is a |
|00001ed0| 64 69 61 6c 6f 67 20 77 | 69 6e 64 6f 77 3f 0d 09 |dialog w|indow?..|
|00001ee0| 09 42 4e 45 2e 53 09 45 | 78 69 74 09 09 09 3b 20 |.BNE.S.E|xit...; |
|00001ef0| 6e 6f 2c 20 72 65 73 75 | 6c 74 20 69 73 20 67 6f |no, resu|lt is go|
|00001f00| 69 6e 67 20 74 6f 20 62 | 65 20 66 61 6c 73 65 0d |ing to b|e false.|
|00001f10| 0d 40 31 09 09 4d 4f 56 | 45 2e 57 09 23 54 72 75 |.@1..MOV|E.W.#Tru|
|00001f20| 65 2c 52 65 73 75 6c 74 | 28 41 36 29 09 3b 20 72 |e,Result|(A6).; r|
|00001f30| 65 74 75 72 6e 20 74 72 | 75 65 20 74 6f 20 74 68 |eturn tr|ue to th|
|00001f40| 65 20 63 61 6c 6c 65 72 | 0d 0d 45 78 69 74 09 09 |e caller|..Exit..|
|00001f50| 55 4e 4c 4b 09 41 36 09 | 09 09 3b 20 64 65 73 74 |UNLK.A6.|..; dest|
|00001f60| 72 6f 79 20 74 68 65 20 | 6c 69 6e 6b 0d 09 09 4d |roy the |link...M|
|00001f70| 4f 56 45 41 2e 4c 09 28 | 53 50 29 2b 2c 41 30 09 |OVEA.L.(|SP)+,A0.|
|00001f80| 09 3b 20 70 75 6c 6c 20 | 6f 66 66 20 74 68 65 20 |.; pull |off the |
|00001f90| 72 65 74 75 72 6e 20 61 | 64 64 72 65 73 73 0d 09 |return a|ddress..|
|00001fa0| 09 41 44 44 41 2e 4c 09 | 23 50 61 72 61 6d 53 69 |.ADDA.L.|#ParamSi|
|00001fb0| 7a 65 2c 53 50 09 09 3b | 20 73 74 72 69 70 20 61 |ze,SP..;| strip a|
|00001fc0| 6c 6c 20 6f 66 20 74 68 | 65 20 63 61 6c 6c 65 72 |ll of th|e caller|
|00001fd0| 27 73 20 70 61 72 61 6d | 65 74 65 72 73 0d 09 09 |'s param|eters...|
|00001fe0| 4a 4d 50 09 28 41 30 29 | 09 09 09 3b 20 72 65 74 |JMP.(A0)|...; ret|
|00001ff0| 75 72 6e 20 74 6f 20 74 | 68 65 20 63 61 6c 6c 65 |urn to t|he calle|
|00002000| 72 0d 0d 09 09 44 62 67 | 49 6e 66 6f 09 49 73 41 |r....Dbg|Info.IsA|
|00002010| 70 70 57 69 6e 09 09 3b | 20 74 68 69 73 20 6e 61 |ppWin..;| this na|
|00002020| 6d 65 20 77 69 6c 6c 20 | 61 70 70 65 61 72 20 69 |me will |appear i|
|00002030| 6e 20 74 68 65 20 64 65 | 62 75 67 67 65 72 0d 09 |n the de|bugger..|
|00002040| 09 45 4e 44 46 0d 0d 2a | 20 3d 3d 3d 3d 3d 3d 3d |.ENDF..*| =======|
|00002050| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002060| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002070| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 0d 2a 20 50 52 4f 43 |========|=.* PROC|
|00002080| 45 44 55 52 45 20 41 6c | 65 72 74 55 73 65 72 3b |EDURE Al|ertUser;|
|00002090| 0d 2a 20 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |.* =====|========|
|000020a0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000020b0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000020c0| 3d 3d 3d 0d 2a 20 44 69 | 73 70 6c 61 79 20 61 6e |===.* Di|splay an|
|000020d0| 20 61 6c 65 72 74 20 74 | 68 61 74 20 74 65 6c 6c | alert t|hat tell|
|000020e0| 73 20 74 68 65 20 75 73 | 65 72 20 61 6e 20 65 72 |s the us|er an er|
|000020f0| 72 6f 72 20 6f 63 63 75 | 72 72 65 64 2c 20 74 68 |ror occu|rred, th|
|00002100| 65 6e 20 65 78 69 74 20 | 74 68 65 20 70 72 6f 67 |en exit |the prog|
|00002110| 72 61 6d 2e 0d 2a 20 54 | 68 69 73 20 72 6f 75 74 |ram..* T|his rout|
|00002120| 69 6e 65 20 69 73 20 75 | 73 65 64 20 61 73 20 61 |ine is u|sed as a|
|00002130| 6e 20 75 6c 74 69 6d 61 | 74 65 20 62 61 69 6c 2d |n ultima|te bail-|
|00002140| 6f 75 74 20 66 6f 72 20 | 73 65 72 69 6f 75 73 20 |out for |serious |
|00002150| 65 72 72 6f 72 73 20 74 | 68 61 74 20 70 72 6f 68 |errors t|hat proh|
|00002160| 69 62 69 74 0d 2a 20 74 | 68 65 20 63 6f 6e 74 69 |ibit.* t|he conti|
|00002170| 6e 75 61 74 69 6f 6e 20 | 6f 66 20 74 68 65 20 61 |nuation |of the a|
|00002180| 70 70 6c 69 63 61 74 69 | 6f 6e 2e 20 45 72 72 6f |pplicati|on. Erro|
|00002190| 72 73 20 74 68 61 74 20 | 64 6f 20 6e 6f 74 20 72 |rs that |do not r|
|000021a0| 65 71 75 69 72 65 20 74 | 68 65 20 74 65 72 6d 69 |equire t|he termi|
|000021b0| 6e 61 74 69 6f 6e 0d 2a | 20 6f 66 20 74 68 65 20 |nation.*| of the |
|000021c0| 61 70 70 6c 69 63 61 74 | 69 6f 6e 20 73 68 6f 75 |applicat|ion shou|
|000021d0| 6c 64 20 62 65 20 68 61 | 6e 64 6c 65 64 20 69 6e |ld be ha|ndled in|
|000021e0| 20 61 20 64 69 66 66 65 | 72 65 6e 74 20 6d 61 6e | a diffe|rent man|
|000021f0| 6e 65 72 2e 20 45 72 72 | 6f 72 20 63 68 65 63 6b |ner. Err|or check|
|00002200| 69 6e 67 20 61 6e 64 0d | 2a 20 72 65 70 6f 72 74 |ing and.|* report|
|00002210| 69 6e 67 20 68 61 73 20 | 61 20 70 6c 61 63 65 20 |ing has |a place |
|00002220| 65 76 65 6e 20 69 6e 20 | 74 68 65 20 73 69 6d 70 |even in |the simp|
|00002230| 6c 65 73 74 20 61 70 70 | 6c 69 63 61 74 69 6f 6e |lest app|lication|
|00002240| 2e 20 46 6f 72 20 73 69 | 6d 70 6c 69 63 69 74 79 |. For si|mplicity|
|00002250| 2c 20 74 68 65 20 61 6c | 65 72 74 0d 2a 20 64 69 |, the al|ert.* di|
|00002260| 73 70 6c 61 79 65 64 20 | 68 65 72 65 20 6f 6e 6c |splayed |here onl|
|00002270| 79 20 73 61 79 73 20 74 | 68 61 74 20 61 6e 20 65 |y says t|hat an e|
|00002280| 72 72 6f 72 20 6f 63 63 | 75 72 72 65 64 2c 20 62 |rror occ|urred, b|
|00002290| 75 74 20 6e 6f 74 20 77 | 68 61 74 20 69 74 20 77 |ut not w|hat it w|
|000022a0| 61 73 2e 20 54 68 65 72 | 65 20 61 72 65 0d 2a 20 |as. Ther|e are.* |
|000022b0| 76 61 72 69 6f 75 73 20 | 6d 65 74 68 6f 64 73 20 |various |methods |
|000022c0| 61 76 61 69 6c 61 62 6c | 65 20 66 6f 72 20 62 65 |availabl|e for be|
|000022d0| 69 6e 67 20 6d 6f 72 65 | 20 73 70 65 63 69 66 69 |ing more| specifi|
|000022e0| 63 2e 0d 0d 09 09 53 45 | 47 09 27 4d 61 69 6e 27 |c.....SE|G.'Main'|
|000022f0| 09 09 3b 20 63 61 73 65 | 20 73 65 6e 73 69 74 69 |..; case| sensiti|
|00002300| 76 65 0d 41 6c 65 72 74 | 55 73 65 72 09 50 52 4f |ve.Alert|User.PRO|
|00002310| 43 09 45 58 50 4f 52 54 | 09 09 09 3b 20 61 6e 79 |C.EXPORT|...; any|
|00002320| 20 73 6f 75 72 63 65 20 | 66 69 6c 65 20 63 61 6e | source |file can|
|00002330| 20 75 73 65 20 74 68 69 | 73 20 72 6f 75 74 69 6e | use thi|s routin|
|00002340| 65 0d 0d 53 74 61 63 6b | 46 72 61 6d 65 09 52 45 |e..Stack|Frame.RE|
|00002350| 43 4f 52 44 09 7b 41 36 | 4c 69 6e 6b 7d 2c 44 45 |CORD.{A6|Link},DE|
|00002360| 43 52 09 09 3b 20 62 75 | 69 6c 64 20 61 20 73 74 |CR..; bu|ild a st|
|00002370| 61 63 6b 20 66 72 61 6d | 65 20 72 65 63 6f 72 64 |ack fram|e record|
|00002380| 0d 50 61 72 61 6d 42 65 | 67 69 6e 09 45 51 55 09 |.ParamBe|gin.EQU.|
|00002390| 2a 09 09 09 3b 20 73 74 | 61 72 74 20 70 61 72 61 |*...; st|art para|
|000023a0| 6d 65 74 65 72 73 20 61 | 66 74 65 72 20 74 68 69 |meters a|fter thi|
|000023b0| 73 20 70 6f 69 6e 74 0d | 50 61 72 61 6d 53 69 7a |s point.|ParamSiz|
|000023c0| 65 09 45 51 55 09 50 61 | 72 61 6d 42 65 67 69 6e |e.EQU.Pa|ramBegin|
|000023d0| 2d 2a 09 09 3b 20 73 69 | 7a 65 20 6f 66 20 61 6c |-*..; si|ze of al|
|000023e0| 6c 20 74 68 65 20 70 61 | 73 73 65 64 20 70 61 72 |l the pa|ssed par|
|000023f0| 61 6d 65 74 65 72 73 0d | 52 65 74 41 64 64 72 20 |ameters.|RetAddr |
|00002400| 09 44 53 2e 4c 09 31 09 | 09 09 3b 20 70 6c 61 63 |.DS.L.1.|..; plac|
|00002410| 65 20 68 6f 6c 64 65 72 | 20 66 6f 72 20 72 65 74 |e holder| for ret|
|00002420| 75 72 6e 20 61 64 64 72 | 65 73 73 0d 41 36 4c 69 |urn addr|ess.A6Li|
|00002430| 6e 6b 09 09 44 53 2e 4c | 09 31 09 09 09 3b 20 70 |nk..DS.L|.1...; p|
|00002440| 6c 61 63 65 20 68 6f 6c | 64 65 72 20 66 6f 72 20 |lace hol|der for |
|00002450| 41 36 20 6c 69 6e 6b 0d | 4c 6f 63 61 6c 53 69 7a |A6 link.|LocalSiz|
|00002460| 65 09 45 51 55 20 09 2a | 09 09 09 3b 20 73 69 7a |e.EQU .*|...; siz|
|00002470| 65 20 6f 66 20 61 6c 6c | 20 74 68 65 20 6c 6f 63 |e of all| the loc|
|00002480| 61 6c 20 76 61 72 69 61 | 62 6c 65 73 0d 09 09 45 |al varia|bles...E|
|00002490| 4e 44 52 0d 0d 09 09 57 | 49 54 48 09 53 74 61 63 |NDR....W|ITH.Stac|
|000024a0| 6b 46 72 61 6d 65 09 09 | 3b 20 63 6f 76 65 72 20 |kFrame..|; cover |
|000024b0| 6f 75 72 20 6c 6f 63 61 | 6c 20 73 74 61 63 6b 20 |our loca|l stack |
|000024c0| 66 72 61 6d 65 0d 09 09 | 4c 49 4e 4b 09 41 36 2c |frame...|LINK.A6,|
|000024d0| 23 4c 6f 63 61 6c 53 69 | 7a 65 09 09 3b 20 61 6c |#LocalSi|ze..; al|
|000024e0| 6c 6f 63 61 74 65 20 6f | 75 72 20 6c 6f 63 61 6c |locate o|ur local|
|000024f0| 20 73 74 61 63 6b 20 66 | 72 61 6d 65 0d 0d 09 09 | stack f|rame....|
|00002500| 43 4c 52 2e 57 09 2d 28 | 53 50 29 09 09 09 3b 20 |CLR.W.-(|SP)...; |
|00002510| 73 70 61 63 65 20 66 6f | 72 20 72 65 73 75 6c 74 |space fo|r result|
|00002520| 20 6f 66 20 41 6c 65 72 | 74 0d 09 09 4d 4f 56 45 | of Aler|t...MOVE|
|00002530| 2e 57 09 23 72 55 73 65 | 72 41 6c 65 72 74 2c 2d |.W.#rUse|rAlert,-|
|00002540| 28 53 50 29 09 3b 20 72 | 65 73 6f 75 72 63 65 20 |(SP).; r|esource |
|00002550| 66 6f 72 20 61 6c 65 72 | 74 20 64 69 61 6c 6f 67 |for aler|t dialog|
|00002560| 0d 09 09 43 4c 52 2e 4c | 09 2d 28 53 50 29 09 09 |...CLR.L|.-(SP)..|
|00002570| 09 3b 20 6e 6f 20 66 69 | 6c 74 65 72 20 70 72 6f |.; no fi|lter pro|
|00002580| 63 65 64 75 72 65 20 75 | 73 65 64 20 68 65 72 65 |cedure u|sed here|
|00002590| 0d 09 09 5f 41 6c 65 72 | 74 09 09 09 09 3b 20 72 |..._Aler|t....; r|
|000025a0| 65 61 64 20 74 68 65 20 | 72 65 73 6f 75 72 63 65 |ead the |resource|
|000025b0| 20 61 6e 64 20 64 69 73 | 70 6c 61 79 20 69 74 0d | and dis|play it.|
|000025c0| 09 09 4d 4f 56 45 2e 57 | 09 28 53 50 29 2b 2c 44 |..MOVE.W|.(SP)+,D|
|000025d0| 30 09 09 3b 20 49 20 64 | 6f 6e 27 74 20 63 61 72 |0..; I d|on't car|
|000025e0| 65 20 77 68 69 63 68 20 | 69 74 65 6d 20 69 73 20 |e which |item is |
|000025f0| 77 61 73 0d 09 09 5f 45 | 78 69 74 54 6f 53 68 65 |was..._E|xitToShe|
|00002600| 6c 6c 09 09 09 3b 20 77 | 65 27 72 65 20 6f 75 74 |ll...; w|e're out|
|00002610| 20 6f 66 20 68 65 72 65 | 2c 20 6e 6f 20 65 72 72 | of here|, no err|
|00002620| 6f 72 20 72 65 63 6f 76 | 65 72 79 0d 0d 45 78 69 |or recov|ery..Exi|
|00002630| 74 09 09 55 4e 4c 4b 09 | 41 36 09 09 09 3b 20 64 |t..UNLK.|A6...; d|
|00002640| 65 73 74 72 6f 79 20 74 | 68 65 20 6c 69 6e 6b 0d |estroy t|he link.|
|00002650| 09 09 4d 4f 56 45 41 2e | 4c 09 28 53 50 29 2b 2c |..MOVEA.|L.(SP)+,|
|00002660| 41 30 09 09 3b 20 70 75 | 6c 6c 20 6f 66 66 20 74 |A0..; pu|ll off t|
|00002670| 68 65 20 72 65 74 75 72 | 6e 20 61 64 64 72 65 73 |he retur|n addres|
|00002680| 73 0d 09 09 41 44 44 41 | 2e 4c 09 23 50 61 72 61 |s...ADDA|.L.#Para|
|00002690| 6d 53 69 7a 65 2c 53 50 | 09 09 3b 20 73 74 72 69 |mSize,SP|..; stri|
|000026a0| 70 20 61 6c 6c 20 6f 66 | 20 74 68 65 20 63 61 6c |p all of| the cal|
|000026b0| 6c 65 72 27 73 20 70 61 | 72 61 6d 65 74 65 72 73 |ler's pa|rameters|
|000026c0| 0d 09 09 4a 4d 50 09 28 | 41 30 29 09 09 09 3b 20 |...JMP.(|A0)...; |
|000026d0| 72 65 74 75 72 6e 20 74 | 6f 20 74 68 65 20 63 61 |return t|o the ca|
|000026e0| 6c 6c 65 72 0d 0d 09 09 | 44 62 67 49 6e 66 6f 09 |ller....|DbgInfo.|
|000026f0| 41 6c 72 74 55 73 65 72 | 09 09 3b 20 74 68 69 73 |AlrtUser|..; this|
|00002700| 20 6e 61 6d 65 20 77 69 | 6c 6c 20 61 70 70 65 61 | name wi|ll appea|
|00002710| 72 20 69 6e 20 74 68 65 | 20 64 65 62 75 67 67 65 |r in the| debugge|
|00002720| 72 0d 09 09 45 4e 44 50 | 0d 0d 2a 20 3d 3d 3d 3d |r...ENDP|..* ====|
|00002730| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002740| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002750| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 0d 2a 20 46 |========|====.* F|
|00002760| 55 4e 43 54 49 4f 4e 20 | 44 6f 43 6c 6f 73 65 57 |UNCTION |DoCloseW|
|00002770| 69 6e 64 6f 77 28 77 69 | 6e 64 6f 77 3a 20 57 69 |indow(wi|ndow: Wi|
|00002780| 6e 64 6f 77 50 74 72 29 | 20 3a 20 42 4f 4f 4c 45 |ndowPtr)| : BOOLE|
|00002790| 41 4e 3b 0d 2a 20 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |AN;.* ==|========|
|000027a0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000027b0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000027c0| 3d 3d 3d 3d 3d 3d 0d 2a | 20 41 74 20 74 68 69 73 |======.*| At this|
|000027d0| 20 70 6f 69 6e 74 2c 20 | 69 66 20 74 68 65 72 65 | point, |if there|
|000027e0| 20 77 61 73 20 61 20 64 | 6f 63 75 6d 65 6e 74 20 | was a d|ocument |
|000027f0| 61 73 73 6f 63 69 61 74 | 65 64 20 77 69 74 68 20 |associat|ed with |
|00002800| 61 20 77 69 6e 64 6f 77 | 2c 20 79 6f 75 20 63 6f |a window|, you co|
|00002810| 75 6c 64 0d 2a 20 64 6f | 20 61 6e 79 20 64 6f 63 |uld.* do| any doc|
|00002820| 75 6d 65 6e 74 20 73 61 | 76 69 6e 67 20 70 72 6f |ument sa|ving pro|
|00002830| 63 65 73 73 69 6e 67 20 | 69 66 20 69 74 20 69 73 |cessing |if it is|
|00002840| 20 27 64 69 72 74 79 27 | 2e 20 20 44 6f 43 6c 6f | 'dirty'|. DoClo|
|00002850| 73 65 57 69 6e 64 6f 77 | 20 77 6f 75 6c 64 0d 2a |seWindow| would.*|
|00002860| 20 72 65 74 75 72 6e 20 | 54 52 55 45 20 69 66 20 | return |TRUE if |
|00002870| 74 68 65 20 77 69 6e 64 | 6f 77 20 61 63 74 75 61 |the wind|ow actua|
|00002880| 6c 6c 79 20 63 6c 6f 73 | 65 73 2c 20 69 2e 65 2e |lly clos|es, i.e.|
|00002890| 2c 20 74 68 65 20 75 73 | 65 72 20 64 6f 65 73 20 |, the us|er does |
|000028a0| 6e 6f 74 20 63 61 6e 63 | 65 6c 0d 2a 20 66 72 6f |not canc|el.* fro|
|000028b0| 6d 20 61 20 73 61 76 65 | 20 64 69 61 6c 6f 67 2e |m a save| dialog.|
|000028c0| 20 54 68 69 73 20 72 65 | 73 75 6c 74 20 69 73 20 | This re|sult is |
|000028d0| 68 61 6e 64 79 20 77 68 | 65 6e 20 74 68 65 20 75 |handy wh|en the u|
|000028e0| 73 65 72 20 71 75 69 74 | 73 20 61 6e 20 61 70 70 |ser quit|s an app|
|000028f0| 6c 69 63 61 74 69 6f 6e | 2c 0d 2a 20 62 75 74 20 |lication|,.* but |
|00002900| 74 68 65 6e 20 63 61 6e | 63 65 6c 73 20 61 20 73 |then can|cels a s|
|00002910| 61 76 65 20 6f 66 20 61 | 20 64 6f 63 75 6d 65 6e |ave of a| documen|
|00002920| 74 20 61 73 73 6f 63 69 | 61 74 65 64 20 77 69 74 |t associ|ated wit|
|00002930| 68 20 61 20 77 69 6e 64 | 6f 77 2e 20 57 65 20 61 |h a wind|ow. We a|
|00002940| 6c 73 6f 20 61 64 64 65 | 64 0d 2a 20 63 6f 64 65 |lso adde|d.* code|
|00002950| 20 74 6f 20 63 6c 6f 73 | 65 20 74 68 65 20 61 70 | to clos|e the ap|
|00002960| 70 6c 69 63 61 74 69 6f | 6e 20 77 69 6e 64 6f 77 |plicatio|n window|
|00002970| 20 73 69 6e 63 65 20 6f | 74 68 65 72 77 69 73 65 | since o|therwise|
|00002980| 2c 20 74 68 65 20 74 65 | 72 6d 69 6e 61 74 69 6f |, the te|rminatio|
|00002990| 6e 20 72 6f 75 74 69 6e | 65 73 0d 2a 20 77 6f 75 |n routin|es.* wou|
|000029a0| 6c 64 20 6e 65 76 65 72 | 20 73 74 6f 70 20 6c 6f |ld never| stop lo|
|000029b0| 6f 70 69 6e 67 2c 20 77 | 61 69 74 69 6e 67 20 66 |oping, w|aiting f|
|000029c0| 6f 72 20 46 72 6f 6e 74 | 57 69 6e 64 6f 77 20 74 |or Front|Window t|
|000029d0| 6f 20 72 65 74 75 72 6e | 20 4e 49 4c 2e 0d 0d 20 |o return| NIL... |
|000029e0| 09 09 53 45 47 09 27 4d | 61 69 6e 27 09 09 09 3b |..SEG.'M|ain'...;|
|000029f0| 20 63 61 73 65 20 73 65 | 6e 73 69 74 69 76 65 0d | case se|nsitive.|
|00002a00| 44 6f 43 6c 6f 73 65 57 | 69 6e 64 6f 77 09 46 55 |DoCloseW|indow.FU|
|00002a10| 4e 43 09 45 58 50 4f 52 | 54 09 09 09 3b 20 61 6e |NC.EXPOR|T...; an|
|00002a20| 79 20 73 6f 75 72 63 65 | 20 66 69 6c 65 20 63 61 |y source| file ca|
|00002a30| 6e 20 75 73 65 20 74 68 | 69 73 20 72 6f 75 74 69 |n use th|is routi|
|00002a40| 6e 65 0d 0d 53 74 61 63 | 6b 46 72 61 6d 65 09 52 |ne..Stac|kFrame.R|
|00002a50| 45 43 4f 52 44 09 7b 41 | 36 4c 69 6e 6b 7d 2c 44 |ECORD.{A|6Link},D|
|00002a60| 45 43 52 09 09 3b 20 62 | 75 69 6c 64 20 61 20 73 |ECR..; b|uild a s|
|00002a70| 74 61 63 6b 20 66 72 61 | 6d 65 20 72 65 63 6f 72 |tack fra|me recor|
|00002a80| 64 0d 52 65 73 75 6c 74 | 09 09 44 53 2e 57 09 31 |d.Result|..DS.W.1|
|00002a90| 09 09 09 3b 20 66 75 6e | 63 74 69 6f 6e 27 73 20 |...; fun|ction's |
|00002aa0| 72 65 73 75 6c 74 20 72 | 65 74 75 72 6e 65 64 20 |result r|eturned |
|00002ab0| 74 6f 20 63 61 6c 6c 65 | 72 0d 50 61 72 61 6d 42 |to calle|r.ParamB|
|00002ac0| 65 67 69 6e 09 45 51 55 | 09 2a 09 09 09 3b 20 73 |egin.EQU|.*...; s|
|00002ad0| 74 61 72 74 20 70 61 72 | 61 6d 65 74 65 72 73 20 |tart par|ameters |
|00002ae0| 61 66 74 65 72 20 74 68 | 69 73 20 70 6f 69 6e 74 |after th|is point|
|00002af0| 0d 57 69 6e 64 6f 77 50 | 74 72 09 44 53 2e 4c 09 |.WindowP|tr.DS.L.|
|00002b00| 31 09 09 09 3b 20 70 61 | 73 73 65 64 20 77 69 6e |1...; pa|ssed win|
|00002b10| 64 6f 77 20 70 6f 69 6e | 74 65 72 20 70 61 72 61 |dow poin|ter para|
|00002b20| 6d 65 74 65 72 0d 50 61 | 72 61 6d 53 69 7a 65 09 |meter.Pa|ramSize.|
|00002b30| 45 51 55 09 50 61 72 61 | 6d 42 65 67 69 6e 2d 2a |EQU.Para|mBegin-*|
|00002b40| 09 09 3b 20 73 69 7a 65 | 20 6f 66 20 61 6c 6c 20 |..; size| of all |
|00002b50| 74 68 65 20 70 61 73 73 | 65 64 20 70 61 72 61 6d |the pass|ed param|
|00002b60| 65 74 65 72 73 0d 52 65 | 74 41 64 64 72 20 09 44 |eters.Re|tAddr .D|
|00002b70| 53 2e 4c 09 31 09 09 09 | 3b 20 70 6c 61 63 65 20 |S.L.1...|; place |
|00002b80| 68 6f 6c 64 65 72 20 66 | 6f 72 20 72 65 74 75 72 |holder f|or retur|
|00002b90| 6e 20 61 64 64 72 65 73 | 73 0d 41 36 4c 69 6e 6b |n addres|s.A6Link|
|00002ba0| 09 09 44 53 2e 4c 09 31 | 09 09 09 3b 20 70 6c 61 |..DS.L.1|...; pla|
|00002bb0| 63 65 20 68 6f 6c 64 65 | 72 20 66 6f 72 20 41 36 |ce holde|r for A6|
|00002bc0| 20 6c 69 6e 6b 0d 4c 6f | 63 61 6c 53 69 7a 65 09 | link.Lo|calSize.|
|00002bd0| 45 51 55 20 09 2a 09 09 | 09 3b 20 73 69 7a 65 20 |EQU .*..|.; size |
|00002be0| 6f 66 20 61 6c 6c 20 74 | 68 65 20 6c 6f 63 61 6c |of all t|he local|
|00002bf0| 20 76 61 72 69 61 62 6c | 65 73 0d 09 09 45 4e 44 | variabl|es...END|
|00002c00| 52 0d 0d 09 09 57 49 54 | 48 09 53 74 61 63 6b 46 |R....WIT|H.StackF|
|00002c10| 72 61 6d 65 09 09 3b 20 | 63 6f 76 65 72 20 6f 75 |rame..; |cover ou|
|00002c20| 72 20 6c 6f 63 61 6c 20 | 73 74 61 63 6b 20 66 72 |r local |stack fr|
|00002c30| 61 6d 65 0d 09 09 4c 49 | 4e 4b 09 41 36 2c 23 4c |ame...LI|NK.A6,#L|
|00002c40| 6f 63 61 6c 53 69 7a 65 | 09 09 3b 20 61 6c 6c 6f |ocalSize|..; allo|
|00002c50| 63 61 74 65 20 6f 75 72 | 20 6c 6f 63 61 6c 20 73 |cate our| local s|
|00002c60| 74 61 63 6b 20 66 72 61 | 6d 65 0d 0d 09 09 4d 4f |tack fra|me....MO|
|00002c70| 56 45 2e 57 09 23 54 72 | 75 65 2c 52 65 73 75 6c |VE.W.#Tr|ue,Resul|
|00002c80| 74 28 41 36 29 3b 09 3b | 20 69 6e 69 74 69 61 6c |t(A6);.;| initial|
|00002c90| 69 7a 65 20 74 68 65 20 | 66 75 6e 63 74 69 6f 6e |ize the |function|
|00002ca0| 27 73 20 72 65 73 75 6c | 74 0d 0d 09 09 43 4c 52 |'s resul|t....CLR|
|00002cb0| 2e 57 09 2d 28 53 50 29 | 09 09 09 3b 20 73 70 61 |.W.-(SP)|...; spa|
|00002cc0| 63 65 20 66 6f 72 20 72 | 65 73 75 6c 74 20 6f 66 |ce for r|esult of|
|00002cd0| 20 49 73 44 41 57 69 6e | 64 6f 77 0d 09 09 4d 4f | IsDAWin|dow...MO|
|00002ce0| 56 45 2e 4c 09 57 69 6e | 64 6f 77 50 74 72 28 41 |VE.L.Win|dowPtr(A|
|00002cf0| 36 29 2c 2d 28 53 50 29 | 09 3b 20 70 61 73 73 20 |6),-(SP)|.; pass |
|00002d00| 74 68 65 20 77 69 6e 64 | 6f 77 20 70 6f 69 6e 74 |the wind|ow point|
|00002d10| 65 72 0d 09 09 42 53 52 | 09 49 73 44 41 57 69 6e |er...BSR|.IsDAWin|
|00002d20| 64 6f 77 0d 09 09 4d 4f | 56 45 2e 57 09 28 53 50 |dow...MO|VE.W.(SP|
|00002d30| 29 2b 2c 44 30 09 09 3b | 20 72 65 73 75 6c 74 20 |)+,D0..;| result |
|00002d40| 6f 66 20 49 73 44 41 57 | 69 6e 64 6f 77 0d 09 09 |of IsDAW|indow...|
|00002d50| 43 4d 50 49 2e 57 09 23 | 54 72 75 65 2c 44 30 0d |CMPI.W.#|True,D0.|
|00002d60| 09 09 42 4e 45 2e 53 09 | 40 31 09 09 09 3b 20 74 |..BNE.S.|@1...; t|
|00002d70| 68 69 73 20 77 61 73 6e | 27 74 20 61 20 44 41 20 |his wasn|'t a DA |
|00002d80| 77 69 6e 64 6f 77 0d 0d | 09 09 4d 4f 56 45 41 2e |window..|..MOVEA.|
|00002d90| 4c 09 57 69 6e 64 6f 77 | 50 74 72 28 41 36 29 2c |L.Window|Ptr(A6),|
|00002da0| 41 30 09 3b 20 67 65 74 | 20 77 69 6e 64 6f 77 20 |A0.; get| window |
|00002db0| 70 6f 69 6e 74 65 72 0d | 09 09 4d 4f 56 45 2e 57 |pointer.|..MOVE.W|
|00002dc0| 09 57 69 6e 64 6f 77 4b | 69 6e 64 28 41 30 29 2c |.WindowK|ind(A0),|
|00002dd0| 2d 28 53 50 29 09 3b 20 | 70 61 73 73 20 74 68 65 |-(SP).; |pass the|
|00002de0| 20 72 65 66 4e 75 6d 20 | 6f 66 20 44 41 0d 09 09 | refNum |of DA...|
|00002df0| 5f 43 6c 6f 73 65 44 65 | 73 6b 41 63 63 0d 09 09 |_CloseDe|skAcc...|
|00002e00| 42 52 41 2e 53 09 45 78 | 69 74 09 09 09 3b 20 61 |BRA.S.Ex|it...; a|
|00002e10| 6c 6c 20 64 6f 6e 65 0d | 0d 40 31 09 09 43 4c 52 |ll done.|.@1..CLR|
|00002e20| 2e 57 09 2d 28 53 50 29 | 09 09 09 3b 20 73 70 61 |.W.-(SP)|...; spa|
|00002e30| 63 65 20 66 6f 72 20 72 | 65 73 75 6c 74 20 6f 66 |ce for r|esult of|
|00002e40| 20 49 73 41 70 70 57 69 | 6e 64 6f 77 0d 09 09 4d | IsAppWi|ndow...M|
|00002e50| 4f 56 45 2e 4c 09 57 69 | 6e 64 6f 77 50 74 72 28 |OVE.L.Wi|ndowPtr(|
|00002e60| 41 36 29 2c 2d 28 53 50 | 29 09 3b 20 70 61 73 73 |A6),-(SP|).; pass|
|00002e70| 20 61 20 74 68 65 20 77 | 69 6e 64 6f 77 20 70 6f | a the w|indow po|
|00002e80| 69 6e 74 65 72 0d 09 09 | 42 53 52 09 49 73 41 70 |inter...|BSR.IsAp|
|00002e90| 70 57 69 6e 64 6f 77 0d | 09 09 4d 4f 56 45 2e 57 |pWindow.|..MOVE.W|
|00002ea0| 09 28 53 50 29 2b 2c 44 | 30 09 09 3b 20 72 65 73 |.(SP)+,D|0..; res|
|00002eb0| 75 6c 74 20 6f 66 20 49 | 73 41 70 70 57 69 6e 64 |ult of I|sAppWind|
|00002ec0| 6f 77 0d 09 09 43 4d 50 | 49 2e 57 09 23 54 72 75 |ow...CMP|I.W.#Tru|
|00002ed0| 65 2c 44 30 0d 09 09 42 | 4e 45 2e 53 09 45 78 69 |e,D0...B|NE.S.Exi|
|00002ee0| 74 09 09 09 3b 20 69 74 | 20 77 61 73 6e 27 74 20 |t...; it| wasn't |
|00002ef0| 6f 75 72 20 61 70 70 6c | 69 63 61 74 69 6f 6e 27 |our appl|ication'|
|00002f00| 73 20 77 69 6e 64 6f 77 | 0d 0d 09 09 4d 4f 56 45 |s window|....MOVE|
|00002f10| 2e 4c 09 57 69 6e 64 6f | 77 50 74 72 28 41 36 29 |.L.Windo|wPtr(A6)|
|00002f20| 2c 2d 28 53 50 29 09 3b | 20 63 6c 6f 73 65 20 77 |,-(SP).;| close w|
|00002f30| 69 6e 64 6f 77 2c 20 69 | 74 20 73 68 6f 75 6c 64 |indow, i|t should|
|00002f40| 6e 27 74 20 62 65 20 61 | 20 64 69 61 6c 6f 67 0d |n't be a| dialog.|
|00002f50| 09 09 5f 43 6c 6f 73 65 | 57 69 6e 64 6f 77 09 09 |.._Close|Window..|
|00002f60| 09 3b 20 63 6c 6f 73 65 | 20 74 68 65 20 61 70 70 |.; close| the app|
|00002f70| 6c 69 63 61 74 69 6f 6e | 20 77 69 6e 64 6f 77 0d |lication| window.|
|00002f80| 0d 45 78 69 74 09 09 55 | 4e 4c 4b 09 41 36 09 09 |.Exit..U|NLK.A6..|
|00002f90| 09 3b 20 64 65 73 74 72 | 6f 79 20 74 68 65 20 6c |.; destr|oy the l|
|00002fa0| 69 6e 6b 0d 09 09 4d 4f | 56 45 41 2e 4c 09 28 53 |ink...MO|VEA.L.(S|
|00002fb0| 50 29 2b 2c 41 30 09 09 | 3b 20 70 75 6c 6c 20 6f |P)+,A0..|; pull o|
|00002fc0| 66 66 20 74 68 65 20 72 | 65 74 75 72 6e 20 61 64 |ff the r|eturn ad|
|00002fd0| 64 72 65 73 73 0d 09 09 | 41 44 44 41 2e 4c 09 23 |dress...|ADDA.L.#|
|00002fe0| 50 61 72 61 6d 53 69 7a | 65 2c 53 50 09 09 3b 20 |ParamSiz|e,SP..; |
|00002ff0| 73 74 72 69 70 20 61 6c | 6c 20 6f 66 20 74 68 65 |strip al|l of the|
|00003000| 20 63 61 6c 6c 65 72 27 | 73 20 70 61 72 61 6d 65 | caller'|s parame|
|00003010| 74 65 72 73 0d 09 09 4a | 4d 50 09 28 41 30 29 09 |ters...J|MP.(A0).|
|00003020| 09 09 3b 20 72 65 74 75 | 72 6e 20 74 6f 20 74 68 |..; retu|rn to th|
|00003030| 65 20 63 61 6c 6c 65 72 | 0d 0d 09 09 44 62 67 49 |e caller|....DbgI|
|00003040| 6e 66 6f 09 43 6c 6f 73 | 57 69 6e 64 09 09 3b 20 |nfo.Clos|Wind..; |
|00003050| 74 68 69 73 20 6e 61 6d | 65 20 77 69 6c 6c 20 61 |this nam|e will a|
|00003060| 70 70 65 61 72 20 69 6e | 20 74 68 65 20 64 65 62 |ppear in| the deb|
|00003070| 75 67 67 65 72 0d 09 09 | 45 4e 44 46 0d 0d 2a 20 |ugger...|ENDF..* |
|00003080| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00003090| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000030a0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000030b0| 0d 2a 20 50 52 4f 43 45 | 44 55 52 45 20 54 65 72 |.* PROCE|DURE Ter|
|000030c0| 6d 69 6e 61 74 65 3b 0d | 2a 20 3d 3d 3d 3d 3d 3d |minate;.|* ======|
|000030d0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000030e0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000030f0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 0d 2a 20 43 6c 65 |========|==.* Cle|
|00003100| 61 6e 20 75 70 20 74 68 | 65 20 61 70 70 6c 69 63 |an up th|e applic|
|00003110| 61 74 69 6f 6e 20 61 6e | 64 20 65 78 69 74 2e 20 |ation an|d exit. |
|00003120| 57 65 20 63 6c 6f 73 65 | 20 61 6c 6c 20 6f 66 20 |We close| all of |
|00003130| 74 68 65 20 77 69 6e 64 | 6f 77 73 20 73 6f 20 74 |the wind|ows so t|
|00003140| 68 61 74 0d 2a 20 74 68 | 65 79 20 63 61 6e 20 75 |hat.* th|ey can u|
|00003150| 70 64 61 74 65 20 74 68 | 65 69 72 20 64 6f 63 75 |pdate th|eir docu|
|00003160| 6d 65 6e 74 73 2c 20 69 | 66 20 61 6e 79 2e 20 20 |ments, i|f any. |
|00003170| 57 65 20 64 6f 6e 27 74 | 20 68 61 76 65 20 6d 75 |We don't| have mu|
|00003180| 63 68 20 74 6f 20 64 6f | 20 68 65 72 65 2e 0d 2a |ch to do| here..*|
|00003190| 20 4a 75 73 74 20 63 6c | 6f 73 65 20 6f 75 72 20 | Just cl|ose our |
|000031a0| 77 69 6e 64 6f 77 73 20 | 61 6e 64 20 74 68 65 6e |windows |and then|
|000031b0| 20 65 78 69 74 2e 20 20 | 49 66 20 77 65 20 66 69 | exit. |If we fi|
|000031c0| 6e 64 20 6f 75 74 20 74 | 68 61 74 20 61 20 43 61 |nd out t|hat a Ca|
|000031d0| 6e 63 65 6c 20 68 61 73 | 0d 2a 20 6f 63 63 75 72 |ncel has|.* occur|
|000031e0| 72 65 64 20 28 44 6f 43 | 6c 6f 73 65 57 69 6e 64 |red (DoC|loseWind|
|000031f0| 6f 77 20 77 69 6c 6c 20 | 72 65 74 75 72 6e 20 46 |ow will |return F|
|00003200| 61 6c 73 65 29 20 77 65 | 20 77 6f 6e 27 74 20 65 |alse) we| won't e|
|00003210| 78 69 74 20 74 6f 20 74 | 68 65 20 73 68 65 6c 6c |xit to t|he shell|
|00003220| 2c 0d 2a 20 62 75 74 20 | 77 69 6c 6c 20 73 69 6d |,.* but |will sim|
|00003230| 70 6c 79 20 65 78 69 74 | 20 74 68 69 73 20 70 72 |ply exit| this pr|
|00003240| 6f 63 65 64 75 72 65 2e | 0d 0d 09 09 53 45 47 09 |ocedure.|....SEG.|
|00003250| 27 4d 61 69 6e 27 09 09 | 09 3b 20 63 61 73 65 20 |'Main'..|.; case |
|00003260| 73 65 6e 73 69 74 69 76 | 65 0d 54 65 72 6d 69 6e |sensitiv|e.Termin|
|00003270| 61 74 65 09 50 52 4f 43 | 09 45 58 50 4f 52 54 0d |ate.PROC|.EXPORT.|
|00003280| 0d 53 74 61 63 6b 46 72 | 61 6d 65 09 52 45 43 4f |.StackFr|ame.RECO|
|00003290| 52 44 09 7b 41 36 4c 69 | 6e 6b 7d 2c 44 45 43 52 |RD.{A6Li|nk},DECR|
|000032a0| 09 09 3b 20 62 75 69 6c | 64 20 61 20 73 74 61 63 |..; buil|d a stac|
|000032b0| 6b 20 66 72 61 6d 65 20 | 72 65 63 6f 72 64 0d 50 |k frame |record.P|
|000032c0| 61 72 61 6d 42 65 67 69 | 6e 09 45 51 55 09 2a 09 |aramBegi|n.EQU.*.|
|000032d0| 09 09 3b 20 73 74 61 72 | 74 20 70 61 72 61 6d 65 |..; star|t parame|
|000032e0| 74 65 72 73 20 61 66 74 | 65 72 20 74 68 69 73 20 |ters aft|er this |
|000032f0| 70 6f 69 6e 74 0d 50 61 | 72 61 6d 53 69 7a 65 09 |point.Pa|ramSize.|
|00003300| 45 51 55 09 50 61 72 61 | 6d 42 65 67 69 6e 2d 2a |EQU.Para|mBegin-*|
|00003310| 09 09 3b 20 73 69 7a 65 | 20 6f 66 20 61 6c 6c 20 |..; size| of all |
|00003320| 74 68 65 20 70 61 73 73 | 65 64 20 70 61 72 61 6d |the pass|ed param|
|00003330| 65 74 65 72 73 0d 52 65 | 74 41 64 64 72 20 09 44 |eters.Re|tAddr .D|
|00003340| 53 2e 4c 09 31 09 09 09 | 3b 20 70 6c 61 63 65 20 |S.L.1...|; place |
|00003350| 68 6f 6c 64 65 72 20 66 | 6f 72 20 72 65 74 75 72 |holder f|or retur|
|00003360| 6e 20 61 64 64 72 65 73 | 73 0d 41 36 4c 69 6e 6b |n addres|s.A6Link|
|00003370| 09 09 44 53 2e 4c 09 31 | 09 09 09 3b 20 70 6c 61 |..DS.L.1|...; pla|
|00003380| 63 65 20 68 6f 6c 64 65 | 72 20 66 6f 72 20 41 36 |ce holde|r for A6|
|00003390| 20 6c 69 6e 6b 0d 57 69 | 6e 64 6f 77 50 74 72 09 | link.Wi|ndowPtr.|
|000033a0| 44 53 2e 4c 09 31 09 09 | 09 3b 20 6c 6f 63 61 6c |DS.L.1..|.; local|
|000033b0| 20 76 61 72 69 61 62 6c | 65 20 66 6f 72 20 61 20 | variabl|e for a |
|000033c0| 77 69 6e 64 6f 77 20 70 | 6f 69 6e 74 65 72 0d 43 |window p|ointer.C|
|000033d0| 6c 6f 73 65 64 09 09 44 | 53 2e 57 09 31 09 09 09 |losed..D|S.W.1...|
|000033e0| 3b 20 6c 6f 63 61 6c 20 | 76 61 72 69 61 62 6c 65 |; local |variable|
|000033f0| 20 66 6f 72 20 6c 6f 6f | 70 69 6e 67 0d 4c 6f 63 | for loo|ping.Loc|
|00003400| 61 6c 53 69 7a 65 09 45 | 51 55 20 09 2a 09 09 09 |alSize.E|QU .*...|
|00003410| 3b 20 73 69 7a 65 20 6f | 66 20 61 6c 6c 20 74 68 |; size o|f all th|
|00003420| 65 20 6c 6f 63 61 6c 20 | 76 61 72 69 61 62 6c 65 |e local |variable|
|00003430| 73 0d 09 09 45 4e 44 52 | 0d 0d 09 09 49 4d 50 4f |s...ENDR|....IMPO|
|00003440| 52 54 09 44 6f 43 6c 6f | 73 65 57 69 6e 64 6f 77 |RT.DoClo|seWindow|
|00003450| 0d 0d 09 09 57 49 54 48 | 09 53 74 61 63 6b 46 72 |....WITH|.StackFr|
|00003460| 61 6d 65 09 09 3b 20 63 | 6f 76 65 72 20 6f 75 72 |ame..; c|over our|
|00003470| 20 6c 6f 63 61 6c 20 73 | 74 61 63 6b 20 66 72 61 | local s|tack fra|
|00003480| 6d 65 0d 09 09 4c 49 4e | 4b 09 41 36 2c 23 4c 6f |me...LIN|K.A6,#Lo|
|00003490| 63 61 6c 53 69 7a 65 09 | 09 3b 20 61 6c 6c 6f 63 |calSize.|.; alloc|
|000034a0| 61 74 65 20 6f 75 72 20 | 6c 6f 63 61 6c 20 73 74 |ate our |local st|
|000034b0| 61 63 6b 20 66 72 61 6d | 65 0d 0d 09 09 4d 4f 56 |ack fram|e....MOV|
|000034c0| 45 2e 57 09 23 54 72 75 | 65 2c 43 6c 6f 73 65 64 |E.W.#Tru|e,Closed|
|000034d0| 28 41 36 29 09 3b 20 69 | 6e 69 74 69 61 6c 69 7a |(A6).; i|nitializ|
|000034e0| 65 20 6c 6f 63 61 6c 20 | 76 61 72 69 61 62 6c 65 |e local |variable|
|000034f0| 0d 0d 4c 6f 6f 70 09 09 | 43 4c 52 2e 4c 09 2d 28 |..Loop..|CLR.L.-(|
|00003500| 53 50 29 09 09 09 3b 20 | 73 70 61 63 65 20 66 6f |SP)...; |space fo|
|00003510| 72 20 66 72 6f 6e 74 20 | 77 69 6e 64 6f 77 20 70 |r front |window p|
|00003520| 6f 69 6e 74 65 72 0d 09 | 09 5f 46 72 6f 6e 74 57 |ointer..|._FrontW|
|00003530| 69 6e 64 6f 77 0d 09 09 | 4d 4f 56 45 2e 4c 09 28 |indow...|MOVE.L.(|
|00003540| 53 50 29 2b 2c 57 69 6e | 64 6f 77 50 74 72 28 41 |SP)+,Win|dowPtr(A|
|00003550| 36 29 09 3b 20 67 65 74 | 20 74 68 65 20 66 72 6f |6).; get| the fro|
|00003560| 6e 74 20 77 69 6e 64 6f | 77 20 70 6f 69 6e 74 65 |nt windo|w pointe|
|00003570| 72 0d 09 09 43 4d 50 49 | 2e 4c 09 23 4e 49 4c 2c |r...CMPI|.L.#NIL,|
|00003580| 57 69 6e 64 6f 77 50 74 | 72 28 41 36 29 09 3b 20 |WindowPt|r(A6).; |
|00003590| 69 73 20 74 68 65 72 65 | 20 61 20 66 72 6f 6e 74 |is there| a front|
|000035a0| 20 77 69 6e 64 6f 77 3f | 0d 09 09 42 45 51 2e 53 | window?|...BEQ.S|
|000035b0| 09 40 31 09 09 09 3b 20 | 74 68 65 72 65 20 61 72 |.@1...; |there ar|
|000035c0| 65 20 6e 6f 20 6d 6f 72 | 65 20 77 69 6e 64 6f 77 |e no mor|e window|
|000035d0| 73 0d 0d 09 09 43 4c 52 | 2e 57 09 2d 28 53 50 29 |s....CLR|.W.-(SP)|
|000035e0| 09 09 09 3b 20 73 70 61 | 63 65 20 66 6f 72 20 72 |...; spa|ce for r|
|000035f0| 65 73 75 6c 74 20 6f 66 | 20 44 6f 43 6c 6f 73 65 |esult of| DoClose|
|00003600| 57 69 6e 64 6f 77 0d 09 | 09 4d 4f 56 45 2e 4c 09 |Window..|.MOVE.L.|
|00003610| 57 69 6e 64 6f 77 50 74 | 72 28 41 36 29 2c 2d 28 |WindowPt|r(A6),-(|
|00003620| 53 50 29 09 3b 20 70 61 | 73 73 20 74 68 65 20 77 |SP).; pa|ss the w|
|00003630| 69 6e 64 6f 77 20 70 6f | 69 6e 74 65 72 0d 09 09 |indow po|inter...|
|00003640| 42 53 52 09 44 6f 43 6c | 6f 73 65 57 69 6e 64 6f |BSR.DoCl|oseWindo|
|00003650| 77 09 09 3b 20 63 6c 6f | 73 65 20 61 6c 6c 20 6f |w..; clo|se all o|
|00003660| 75 72 20 77 69 6e 64 6f | 77 73 0d 09 09 4d 4f 56 |ur windo|ws...MOV|
|00003670| 45 2e 57 09 28 53 50 29 | 2b 2c 43 6c 6f 73 65 64 |E.W.(SP)|+,Closed|
|00003680| 28 41 36 29 09 3b 20 67 | 65 74 20 72 65 73 75 6c |(A6).; g|et resul|
|00003690| 74 20 6f 66 20 44 6f 43 | 6c 6f 73 65 57 69 6e 64 |t of DoC|loseWind|
|000036a0| 6f 77 0d 09 09 43 4d 50 | 49 2e 57 09 23 54 72 75 |ow...CMP|I.W.#Tru|
|000036b0| 65 2c 43 6c 6f 73 65 64 | 28 41 36 29 09 3b 20 77 |e,Closed|(A6).; w|
|000036c0| 68 61 74 27 73 20 74 68 | 65 20 72 65 73 75 6c 74 |hat's th|e result|
|000036d0| 20 6f 66 20 44 6f 43 6c | 6f 73 65 57 69 6e 64 6f | of DoCl|oseWindo|
|000036e0| 77 3f 0d 09 09 42 4e 45 | 2e 53 09 45 78 69 74 09 |w?...BNE|.S.Exit.|
|000036f0| 09 09 3b 20 75 73 65 72 | 20 64 69 64 6e 27 74 20 |..; user| didn't |
|00003700| 77 61 6e 74 20 74 6f 20 | 63 6c 6f 73 65 20 74 68 |want to |close th|
|00003710| 61 74 20 77 69 6e 64 6f | 77 0d 0d 09 09 42 52 41 |at windo|w....BRA|
|00003720| 2e 53 09 4c 6f 6f 70 09 | 09 09 3b 20 6c 6f 6f 70 |.S.Loop.|..; loop|
|00003730| 20 61 67 61 69 6e 20 61 | 6e 64 20 63 6c 6f 73 65 | again a|nd close|
|00003740| 20 74 68 65 20 6e 65 78 | 74 20 77 69 6e 64 6f 77 | the nex|t window|
|00003750| 0d 0d 40 31 09 09 43 4d | 50 49 2e 57 09 23 54 72 |..@1..CM|PI.W.#Tr|
|00003760| 75 65 2c 43 6c 6f 73 65 | 64 28 41 36 29 09 3b 20 |ue,Close|d(A6).; |
|00003770| 73 68 6f 75 6c 64 20 77 | 65 20 72 65 61 6c 6c 79 |should w|e really|
|00003780| 20 74 65 72 6d 69 6e 61 | 74 65 3f 0d 09 09 42 4e | termina|te?...BN|
|00003790| 45 2e 53 09 45 78 69 74 | 09 09 09 3b 20 6e 6f 2c |E.S.Exit|...; no,|
|000037a0| 20 65 78 69 74 20 74 68 | 69 73 20 70 72 6f 63 65 | exit th|is proce|
|000037b0| 64 75 72 65 0d 0d 09 09 | 5f 45 78 69 74 54 6f 53 |dure....|_ExitToS|
|000037c0| 68 65 6c 6c 09 09 09 3b | 20 77 65 27 72 65 20 64 |hell...;| we're d|
|000037d0| 6f 6e 65 2c 20 6c 65 74 | 27 73 20 67 65 74 20 6f |one, let|'s get o|
|000037e0| 75 74 20 6f 66 20 68 65 | 72 65 0d 0d 45 78 69 74 |ut of he|re..Exit|
|000037f0| 09 09 55 4e 4c 4b 09 41 | 36 09 09 09 3b 20 64 65 |..UNLK.A|6...; de|
|00003800| 73 74 72 6f 79 20 74 68 | 65 20 6c 69 6e 6b 0d 09 |stroy th|e link..|
|00003810| 09 4d 4f 56 45 41 2e 4c | 09 28 53 50 29 2b 2c 41 |.MOVEA.L|.(SP)+,A|
|00003820| 30 09 09 3b 20 70 75 6c | 6c 20 6f 66 66 20 74 68 |0..; pul|l off th|
|00003830| 65 20 72 65 74 75 72 6e | 20 61 64 64 72 65 73 73 |e return| address|
|00003840| 0d 09 09 41 44 44 41 2e | 4c 09 23 50 61 72 61 6d |...ADDA.|L.#Param|
|00003850| 53 69 7a 65 2c 53 50 09 | 09 3b 20 73 74 72 69 70 |Size,SP.|.; strip|
|00003860| 20 61 6c 6c 20 6f 66 20 | 74 68 65 20 63 61 6c 6c | all of |the call|
|00003870| 65 72 27 73 20 70 61 72 | 61 6d 65 74 65 72 73 0d |er's par|ameters.|
|00003880| 09 09 4a 4d 50 09 28 41 | 30 29 09 09 09 3b 20 72 |..JMP.(A|0)...; r|
|00003890| 65 74 75 72 6e 20 74 6f | 20 74 68 65 20 63 61 6c |eturn to| the cal|
|000038a0| 6c 65 72 0d 0d 09 09 44 | 62 67 49 6e 66 6f 09 54 |ler....D|bgInfo.T|
|000038b0| 65 72 6d 69 6e 61 74 09 | 09 3b 20 74 68 69 73 20 |erminat.|.; this |
|000038c0| 6e 61 6d 65 20 77 69 6c | 6c 20 61 70 70 65 61 72 |name wil|l appear|
|000038d0| 20 69 6e 20 74 68 65 20 | 64 65 62 75 67 67 65 72 | in the |debugger|
|000038e0| 0d 09 09 45 4e 44 50 0d | 0d 2a 20 3d 3d 3d 3d 3d |...ENDP.|.* =====|
|000038f0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00003900| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00003910| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 0d 2a 20 50 52 |========|===.* PR|
|00003920| 4f 43 45 44 55 52 45 20 | 53 65 74 4c 69 67 68 74 |OCEDURE |SetLight|
|00003930| 28 77 69 6e 64 6f 77 3a | 20 57 69 6e 64 6f 77 50 |(window:| WindowP|
|00003940| 74 72 3b 20 6e 65 77 53 | 74 6f 70 70 65 64 3a 20 |tr; newS|topped: |
|00003950| 42 4f 4f 4c 45 41 4e 29 | 3b 0d 2a 20 3d 3d 3d 3d |BOOLEAN)|;.* ====|
|00003960| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00003970| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00003980| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 0d 2a 20 43 |========|====.* C|
|00003990| 68 61 6e 67 65 20 74 68 | 65 20 73 65 74 74 69 6e |hange th|e settin|
|000039a0| 67 20 6f 66 20 74 68 65 | 20 6c 69 67 68 74 20 61 |g of the| light a|
|000039b0| 6e 64 20 66 6f 72 63 65 | 20 61 6e 20 75 70 64 61 |nd force| an upda|
|000039c0| 74 65 20 65 76 65 6e 74 | 2e 0d 2a 20 6e 65 77 53 |te event|..* newS|
|000039d0| 74 6f 70 70 65 64 20 69 | 73 20 74 68 65 20 73 74 |topped i|s the st|
|000039e0| 61 74 65 20 6f 66 20 74 | 68 65 20 73 74 6f 70 20 |ate of t|he stop |
|000039f0| 6c 69 67 68 74 20 74 68 | 65 20 75 73 65 72 20 69 |light th|e user i|
|00003a00| 73 20 72 65 71 75 65 73 | 74 69 6e 67 2e 0d 0d 09 |s reques|ting....|
|00003a10| 09 53 45 47 09 27 4d 61 | 69 6e 27 09 09 09 3b 20 |.SEG.'Ma|in'...; |
|00003a20| 63 61 73 65 20 73 65 6e | 73 69 74 69 76 65 0d 53 |case sen|sitive.S|
|00003a30| 65 74 4c 69 67 68 74 09 | 50 52 4f 43 09 45 58 50 |etLight.|PROC.EXP|
|00003a40| 4f 52 54 09 09 09 3b 20 | 61 6e 79 20 73 6f 75 72 |ORT...; |any sour|
|00003a50| 63 65 20 66 69 6c 65 20 | 63 61 6e 20 75 73 65 20 |ce file |can use |
|00003a60| 74 68 69 73 20 72 6f 75 | 74 69 6e 65 0d 0d 53 74 |this rou|tine..St|
|00003a70| 61 63 6b 46 72 61 6d 65 | 09 52 45 43 4f 52 44 09 |ackFrame|.RECORD.|
|00003a80| 7b 41 36 4c 69 6e 6b 7d | 2c 44 45 43 52 09 09 3b |{A6Link}|,DECR..;|
|00003a90| 20 62 75 69 6c 64 20 61 | 20 73 74 61 63 6b 20 66 | build a| stack f|
|00003aa0| 72 61 6d 65 20 72 65 63 | 6f 72 64 0d 50 61 72 61 |rame rec|ord.Para|
|00003ab0| 6d 42 65 67 69 6e 09 45 | 51 55 09 2a 09 09 09 3b |mBegin.E|QU.*...;|
|00003ac0| 20 73 74 61 72 74 20 70 | 61 72 61 6d 65 74 65 72 | start p|arameter|
|00003ad0| 73 20 61 66 74 65 72 20 | 74 68 69 73 20 70 6f 69 |s after |this poi|
|00003ae0| 6e 74 0d 57 69 6e 64 6f | 77 50 74 72 09 44 53 2e |nt.Windo|wPtr.DS.|
|00003af0| 4c 09 31 09 09 09 3b 20 | 70 61 73 73 65 64 20 70 |L.1...; |passed p|
|00003b00| 61 72 61 6d 65 74 65 72 | 20 6f 66 20 74 68 65 20 |arameter| of the |
|00003b10| 77 69 6e 64 6f 77 20 70 | 6f 69 6e 74 65 72 0d 6e |window p|ointer.n|
|00003b20| 65 77 53 74 6f 70 70 65 | 64 09 44 53 2e 57 09 31 |ewStoppe|d.DS.W.1|
|00003b30| 09 09 09 3b 20 74 65 73 | 74 20 76 61 6c 75 65 20 |...; tes|t value |
|00003b40| 70 61 73 73 65 64 20 62 | 79 20 63 61 6c 6c 65 72 |passed b|y caller|
|00003b50| 0d 50 61 72 61 6d 53 69 | 7a 65 09 45 51 55 09 50 |.ParamSi|ze.EQU.P|
|00003b60| 61 72 61 6d 42 65 67 69 | 6e 2d 2a 09 09 3b 20 73 |aramBegi|n-*..; s|
|00003b70| 69 7a 65 20 6f 66 20 61 | 6c 6c 20 74 68 65 20 70 |ize of a|ll the p|
|00003b80| 61 73 73 65 64 20 70 61 | 72 61 6d 65 74 65 72 73 |assed pa|rameters|
|00003b90| 0d 52 65 74 41 64 64 72 | 20 09 44 53 2e 4c 09 31 |.RetAddr| .DS.L.1|
|00003ba0| 09 09 09 3b 20 70 6c 61 | 63 65 20 68 6f 6c 64 65 |...; pla|ce holde|
|00003bb0| 72 20 66 6f 72 20 72 65 | 74 75 72 6e 20 61 64 64 |r for re|turn add|
|00003bc0| 72 65 73 73 0d 41 36 4c | 69 6e 6b 09 09 44 53 2e |ress.A6L|ink..DS.|
|00003bd0| 4c 09 31 09 09 09 3b 20 | 70 6c 61 63 65 20 68 6f |L.1...; |place ho|
|00003be0| 6c 64 65 72 20 66 6f 72 | 20 41 36 20 6c 69 6e 6b |lder for| A6 link|
|00003bf0| 0d 4c 6f 63 61 6c 53 69 | 7a 65 09 45 51 55 20 09 |.LocalSi|ze.EQU .|
|00003c00| 2a 09 09 09 3b 20 73 69 | 7a 65 20 6f 66 20 61 6c |*...; si|ze of al|
|00003c10| 6c 20 74 68 65 20 6c 6f | 63 61 6c 20 76 61 72 69 |l the lo|cal vari|
|00003c20| 61 62 6c 65 73 0d 09 09 | 45 4e 44 52 0d 0d 09 09 |ables...|ENDR....|
|00003c30| 57 49 54 48 09 53 74 61 | 63 6b 46 72 61 6d 65 09 |WITH.Sta|ckFrame.|
|00003c40| 09 3b 20 63 6f 76 65 72 | 20 6f 75 72 20 6c 6f 63 |.; cover| our loc|
|00003c50| 61 6c 20 73 74 61 63 6b | 20 66 72 61 6d 65 0d 09 |al stack| frame..|
|00003c60| 09 4c 49 4e 4b 09 41 36 | 2c 23 4c 6f 63 61 6c 53 |.LINK.A6|,#LocalS|
|00003c70| 69 7a 65 09 09 3b 20 61 | 6c 6c 6f 63 61 74 65 20 |ize..; a|llocate |
|00003c80| 6f 75 72 20 6c 6f 63 61 | 6c 20 73 74 61 63 6b 20 |our loca|l stack |
|00003c90| 66 72 61 6d 65 0d 0d 09 | 09 4d 4f 56 45 2e 57 09 |frame...|.MOVE.W.|
|00003ca0| 47 2e 53 74 6f 70 70 65 | 64 2c 44 30 09 09 3b 20 |G.Stoppe|d,D0..; |
|00003cb0| 67 65 74 20 73 74 61 74 | 65 20 6f 66 20 73 74 6f |get stat|e of sto|
|00003cc0| 70 20 6c 69 67 68 74 0d | 09 09 43 4d 50 2e 57 09 |p light.|..CMP.W.|
|00003cd0| 6e 65 77 53 74 6f 70 70 | 65 64 28 41 36 29 2c 44 |newStopp|ed(A6),D|
|00003ce0| 30 09 3b 20 63 6f 6d 70 | 61 72 65 20 74 6f 20 74 |0.; comp|are to t|
|00003cf0| 68 65 20 6e 65 77 20 73 | 74 61 74 65 0d 09 09 42 |he new s|tate...B|
|00003d00| 45 51 2e 53 09 45 78 69 | 74 09 09 09 3b 20 74 68 |EQ.S.Exi|t...; th|
|00003d10| 65 79 27 72 65 20 74 68 | 65 20 73 61 6d 65 2c 20 |ey're th|e same, |
|00003d20| 73 74 75 70 69 64 20 75 | 73 65 72 21 0d 0d 09 09 |stupid u|ser!....|
|00003d30| 4d 4f 56 45 2e 57 09 6e | 65 77 53 74 6f 70 70 65 |MOVE.W.n|ewStoppe|
|00003d40| 64 28 41 36 29 2c 47 2e | 53 74 6f 70 70 65 64 20 |d(A6),G.|Stopped |
|00003d50| 3b 20 73 65 74 20 67 6c | 6f 62 61 6c 20 74 6f 20 |; set gl|obal to |
|00003d60| 74 68 65 20 6e 65 77 20 | 73 74 61 74 65 0d 09 09 |the new |state...|
|00003d70| 4d 4f 56 45 2e 4c 09 57 | 69 6e 64 6f 77 50 74 72 |MOVE.L.W|indowPtr|
|00003d80| 28 41 36 29 2c 2d 28 53 | 50 29 0d 09 09 5f 53 65 |(A6),-(S|P)..._Se|
|00003d90| 74 50 6f 72 74 09 09 09 | 3b 20 73 65 74 20 74 68 |tPort...|; set th|
|00003da0| 65 20 70 6f 72 74 20 74 | 6f 20 75 73 0d 09 09 4d |e port t|o us...M|
|00003db0| 4f 56 45 41 2e 4c 09 57 | 69 6e 64 6f 77 50 74 72 |OVEA.L.W|indowPtr|
|00003dc0| 28 41 36 29 2c 41 30 09 | 3b 20 66 6f 72 63 65 20 |(A6),A0.|; force |
|00003dd0| 75 70 64 61 74 65 20 65 | 76 65 6e 74 20 66 6f 72 |update e|vent for|
|00003de0| 20 77 69 6e 64 6f 77 0d | 09 09 50 45 41 09 70 6f | window.|..PEA.po|
|00003df0| 72 74 52 65 63 74 28 41 | 30 29 09 09 3b 20 69 6e |rtRect(A|0)..; in|
|00003e00| 76 61 6c 69 64 61 74 65 | 20 65 6e 74 69 72 65 20 |validate| entire |
|00003e10| 77 69 6e 64 6f 77 0d 09 | 09 5f 49 6e 76 61 6c 52 |window..|._InvalR|
|00003e20| 65 63 74 0d 0d 45 78 69 | 74 09 09 55 4e 4c 4b 09 |ect..Exi|t..UNLK.|
|00003e30| 41 36 09 09 09 3b 20 64 | 65 73 74 72 6f 79 20 74 |A6...; d|estroy t|
|00003e40| 68 65 20 6c 69 6e 6b 0d | 09 09 4d 4f 56 45 41 2e |he link.|..MOVEA.|
|00003e50| 4c 09 28 53 50 29 2b 2c | 41 30 09 09 3b 20 70 75 |L.(SP)+,|A0..; pu|
|00003e60| 6c 6c 20 6f 66 66 20 74 | 68 65 20 72 65 74 75 72 |ll off t|he retur|
|00003e70| 6e 20 61 64 64 72 65 73 | 73 0d 09 09 41 44 44 41 |n addres|s...ADDA|
|00003e80| 2e 4c 09 23 50 61 72 61 | 6d 53 69 7a 65 2c 53 50 |.L.#Para|mSize,SP|
|00003e90| 09 09 3b 20 73 74 72 69 | 70 20 61 6c 6c 20 6f 66 |..; stri|p all of|
|00003ea0| 20 74 68 65 20 63 61 6c | 6c 65 72 27 73 20 70 61 | the cal|ler's pa|
|00003eb0| 72 61 6d 65 74 65 72 73 | 0d 09 09 4a 4d 50 09 28 |rameters|...JMP.(|
|00003ec0| 41 30 29 09 09 09 3b 20 | 72 65 74 75 72 6e 20 74 |A0)...; |return t|
|00003ed0| 6f 20 74 68 65 20 63 61 | 6c 6c 65 72 0d 0d 09 09 |o the ca|ller....|
|00003ee0| 44 62 67 49 6e 66 6f 09 | 53 65 74 4c 69 67 68 74 |DbgInfo.|SetLight|
|00003ef0| 09 09 3b 20 74 68 69 73 | 20 6e 61 6d 65 20 77 69 |..; this| name wi|
|00003f00| 6c 6c 20 61 70 70 65 61 | 72 20 69 6e 20 74 68 65 |ll appea|r in the|
|00003f10| 20 64 65 62 75 67 67 65 | 72 0d 09 09 45 4e 44 50 | debugge|r...ENDP|
|00003f20| 0d 0d 2a 20 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |..* ====|========|
|00003f30| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00003f40| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00003f50| 3d 3d 3d 3d 0d 2a 20 50 | 52 4f 43 45 44 55 52 45 |====.* P|ROCEDURE|
|00003f60| 20 41 64 6a 75 73 74 4d | 65 6e 75 73 3b 0d 2a 20 | AdjustM|enus;.* |
|00003f70| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00003f80| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00003f90| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00003fa0| 0d 2a 20 45 6e 61 62 6c | 65 20 61 6e 64 20 64 69 |.* Enabl|e and di|
|00003fb0| 73 61 62 6c 65 20 6d 65 | 6e 75 73 20 62 61 73 65 |sable me|nus base|
|00003fc0| 64 20 6f 6e 20 74 68 65 | 20 63 75 72 72 65 6e 74 |d on the| current|
|00003fd0| 20 73 74 61 74 65 2e 20 | 20 54 68 65 20 75 73 65 | state. | The use|
|00003fe0| 72 20 63 61 6e 20 6f 6e | 6c 79 20 73 65 6c 65 63 |r can on|ly selec|
|00003ff0| 74 0d 2a 20 65 6e 61 62 | 6c 65 64 20 6d 65 6e 75 |t.* enab|led menu|
|00004000| 20 69 74 65 6d 73 2e 20 | 57 65 20 73 65 74 20 75 | items. |We set u|
|00004010| 70 20 61 6c 6c 20 74 68 | 65 20 6d 65 6e 75 20 69 |p all th|e menu i|
|00004020| 74 65 6d 73 20 62 65 66 | 6f 72 65 20 63 61 6c 6c |tems bef|ore call|
|00004030| 69 6e 67 20 4d 65 6e 75 | 53 65 6c 65 63 74 20 6f |ing Menu|Select o|
|00004040| 72 0d 2a 20 4d 65 6e 75 | 4b 65 79 2c 20 73 69 6e |r.* Menu|Key, sin|
|00004050| 63 65 20 74 68 65 73 65 | 20 61 72 65 20 74 68 65 |ce these| are the|
|00004060| 20 6f 6e 6c 79 20 74 69 | 6d 65 73 20 74 68 61 74 | only ti|mes that|
|00004070| 20 61 20 6d 65 6e 75 20 | 69 74 65 6d 20 63 61 6e | a menu |item can|
|00004080| 20 62 65 20 73 65 6c 65 | 63 74 65 64 2e 20 4e 6f | be sele|cted. No|
|00004090| 74 65 0d 2a 20 74 68 61 | 74 20 4d 65 6e 75 53 65 |te.* tha|t MenuSe|
|000040a0| 6c 65 63 74 20 69 73 20 | 61 6c 73 6f 20 74 68 65 |lect is |also the|
|000040b0| 20 6f 6e 6c 79 20 74 69 | 6d 65 20 74 68 65 20 75 | only ti|me the u|
|000040c0| 73 65 72 20 77 69 6c 6c | 20 73 65 65 20 6d 65 6e |ser will| see men|
|000040d0| 75 20 69 74 65 6d 73 2e | 20 54 68 69 73 0d 2a 20 |u items.| This.* |
|000040e0| 61 70 70 72 6f 61 63 68 | 20 74 6f 20 64 65 63 69 |approach| to deci|
|000040f0| 64 69 6e 67 20 77 68 61 | 74 20 65 6e 61 62 6c 65 |ding wha|t enable|
|00004100| 2f 64 69 73 61 62 6c 65 | 20 73 74 61 74 65 20 61 |/disable| state a|
|00004110| 20 6d 65 6e 75 20 69 74 | 65 6d 20 68 61 73 20 74 | menu it|em has t|
|00004120| 68 65 20 61 64 76 61 6e | 74 61 67 65 0d 2a 20 6f |he advan|tage.* o|
|00004130| 66 20 63 6f 6e 63 65 6e | 74 72 61 74 69 6e 67 20 |f concen|trating |
|00004140| 61 6c 6c 20 74 68 65 20 | 64 65 63 69 73 69 6f 6e |all the |decision|
|00004150| 20 6d 61 6b 69 6e 67 20 | 69 6e 20 6f 6e 65 20 72 | making |in one r|
|00004160| 6f 75 74 69 6e 65 2c 20 | 61 73 20 6f 70 70 6f 73 |outine, |as oppos|
|00004170| 65 64 20 74 6f 20 62 65 | 69 6e 67 0d 2a 20 73 70 |ed to be|ing.* sp|
|00004180| 72 65 61 64 20 74 68 72 | 6f 75 67 68 6f 75 74 20 |read thr|oughout |
|00004190| 74 68 65 20 61 70 70 6c | 69 63 61 74 69 6f 6e 2e |the appl|ication.|
|000041a0| 20 20 4f 74 68 65 72 20 | 61 70 70 6c 69 63 61 74 | Other |applicat|
|000041b0| 69 6f 6e 20 64 65 73 69 | 67 6e 73 20 6d 61 79 20 |ion desi|gns may |
|000041c0| 74 61 6b 65 20 61 0d 2a | 20 64 69 66 66 65 72 65 |take a.*| differe|
|000041d0| 6e 74 20 61 70 70 72 6f | 61 63 68 20 74 68 61 74 |nt appro|ach that|
|000041e0| 20 61 72 65 20 6a 75 73 | 74 20 61 73 20 76 61 6c | are jus|t as val|
|000041f0| 69 64 2e 0d 0d 09 09 53 | 45 47 09 27 4d 61 69 6e |id.....S|EG.'Main|
|00004200| 27 09 09 09 3b 20 63 61 | 73 65 20 73 65 6e 73 69 |'...; ca|se sensi|
|00004210| 74 69 76 65 0d 41 64 6a | 75 73 74 4d 65 6e 75 73 |tive.Adj|ustMenus|
|00004220| 09 50 52 4f 43 09 45 58 | 50 4f 52 54 09 09 09 3b |.PROC.EX|PORT...;|
|00004230| 20 61 6e 79 20 73 6f 75 | 72 63 65 20 66 69 6c 65 | any sou|rce file|
|00004240| 20 63 61 6e 20 75 73 65 | 20 74 68 69 73 20 72 6f | can use| this ro|
|00004250| 75 74 69 6e 65 0d 0d 53 | 74 61 63 6b 46 72 61 6d |utine..S|tackFram|
|00004260| 65 09 52 45 43 4f 52 44 | 09 7b 41 36 4c 69 6e 6b |e.RECORD|.{A6Link|
|00004270| 7d 2c 44 45 43 52 09 09 | 3b 20 62 75 69 6c 64 20 |},DECR..|; build |
|00004280| 61 20 73 74 61 63 6b 20 | 66 72 61 6d 65 20 72 65 |a stack |frame re|
|00004290| 63 6f 72 64 0d 50 61 72 | 61 6d 42 65 67 69 6e 09 |cord.Par|amBegin.|
|000042a0| 45 51 55 09 2a 09 09 09 | 3b 20 73 74 61 72 74 20 |EQU.*...|; start |
|000042b0| 70 61 72 61 6d 65 74 65 | 72 73 20 61 66 74 65 72 |paramete|rs after|
|000042c0| 20 74 68 69 73 20 70 6f | 69 6e 74 0d 50 61 72 61 | this po|int.Para|
|000042d0| 6d 53 69 7a 65 09 45 51 | 55 09 50 61 72 61 6d 42 |mSize.EQ|U.ParamB|
|000042e0| 65 67 69 6e 2d 2a 09 09 | 3b 20 73 69 7a 65 20 6f |egin-*..|; size o|
|000042f0| 66 20 61 6c 6c 20 74 68 | 65 20 70 61 73 73 65 64 |f all th|e passed|
|00004300| 20 70 61 72 61 6d 65 74 | 65 72 73 0d 52 65 74 41 | paramet|ers.RetA|
|00004310| 64 64 72 20 09 44 53 2e | 4c 09 31 09 09 09 3b 20 |ddr .DS.|L.1...; |
|00004320| 70 6c 61 63 65 20 68 6f | 6c 64 65 72 20 66 6f 72 |place ho|lder for|
|00004330| 20 72 65 74 75 72 6e 20 | 61 64 64 72 65 73 73 0d | return |address.|
|00004340| 41 36 4c 69 6e 6b 09 09 | 44 53 2e 4c 09 31 09 09 |A6Link..|DS.L.1..|
|00004350| 09 3b 20 70 6c 61 63 65 | 20 68 6f 6c 64 65 72 20 |.; place| holder |
|00004360| 66 6f 72 20 41 36 20 6c | 69 6e 6b 0d 46 72 6f 6e |for A6 l|ink.Fron|
|00004370| 74 4d 6f 73 74 09 44 53 | 2e 4c 09 31 09 09 09 3b |tMost.DS|.L.1...;|
|00004380| 20 6c 6f 63 61 6c 20 63 | 6f 70 79 20 6f 66 20 74 | local c|opy of t|
|00004390| 68 65 20 66 72 6f 6e 74 | 20 77 69 6e 64 6f 77 0d |he front| window.|
|000043a0| 4d 65 6e 75 09 09 44 53 | 2e 4c 09 31 09 09 09 3b |Menu..DS|.L.1...;|
|000043b0| 20 6c 6f 63 61 6c 20 63 | 6f 70 79 20 6f 66 20 74 | local c|opy of t|
|000043c0| 68 65 20 6d 65 6e 75 20 | 68 61 6e 64 6c 65 0d 4c |he menu |handle.L|
|000043d0| 6f 63 61 6c 53 69 7a 65 | 09 45 51 55 20 09 2a 09 |ocalSize|.EQU .*.|
|000043e0| 09 09 3b 20 73 69 7a 65 | 20 6f 66 20 61 6c 6c 20 |..; size| of all |
|000043f0| 74 68 65 20 6c 6f 63 61 | 6c 20 76 61 72 69 61 62 |the loca|l variab|
|00004400| 6c 65 73 0d 09 09 45 4e | 44 52 0d 0d 09 09 57 49 |les...EN|DR....WI|
|00004410| 54 48 09 53 74 61 63 6b | 46 72 61 6d 65 09 09 3b |TH.Stack|Frame..;|
|00004420| 20 63 6f 76 65 72 20 6f | 75 72 20 6c 6f 63 61 6c | cover o|ur local|
|00004430| 20 73 74 61 63 6b 20 66 | 72 61 6d 65 0d 09 09 4c | stack f|rame...L|
|00004440| 49 4e 4b 09 41 36 2c 23 | 4c 6f 63 61 6c 53 69 7a |INK.A6,#|LocalSiz|
|00004450| 65 09 09 3b 20 61 6c 6c | 6f 63 61 74 65 20 6f 75 |e..; all|ocate ou|
|00004460| 72 20 6c 6f 63 61 6c 20 | 73 74 61 63 6b 20 66 72 |r local |stack fr|
|00004470| 61 6d 65 0d 0d 09 09 43 | 4c 52 2e 4c 09 2d 28 53 |ame....C|LR.L.-(S|
|00004480| 50 29 09 09 09 3b 20 73 | 70 61 63 65 20 66 6f 72 |P)...; s|pace for|
|00004490| 20 72 65 73 75 6c 74 0d | 09 09 5f 46 72 6f 6e 74 | result.|.._Front|
|000044a0| 57 69 6e 64 6f 77 0d 09 | 09 4d 4f 56 45 2e 4c 09 |Window..|.MOVE.L.|
|000044b0| 28 53 50 29 2b 2c 46 72 | 6f 6e 74 4d 6f 73 74 28 |(SP)+,Fr|ontMost(|
|000044c0| 41 36 29 09 3b 20 73 61 | 76 65 20 74 68 65 20 66 |A6).; sa|ve the f|
|000044d0| 72 6f 6e 74 20 77 69 6e | 64 6f 77 0d 0d 2a 20 2d |ront win|dow..* -|
|000044e0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 20 41 44 4a |--------|---- ADJ|
|000044f0| 55 53 54 20 54 48 45 20 | 46 49 4c 45 20 4d 45 4e |UST THE |FILE MEN|
|00004500| 55 20 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 0d |U ------|-------.|
|00004510| 41 64 6a 75 73 74 46 69 | 6c 65 0d 09 09 43 4c 52 |AdjustFi|le...CLR|
|00004520| 2e 4c 09 2d 28 53 50 29 | 09 09 09 3b 20 73 70 61 |.L.-(SP)|...; spa|
|00004530| 63 65 20 66 6f 72 20 72 | 65 73 75 6c 74 0d 09 09 |ce for r|esult...|
|00004540| 4d 4f 56 45 2e 57 09 23 | 46 69 6c 65 4d 65 6e 75 |MOVE.W.#|FileMenu|
|00004550| 2c 2d 28 53 50 29 09 09 | 3b 20 67 65 74 20 74 68 |,-(SP)..|; get th|
|00004560| 65 20 46 69 6c 65 20 6d | 65 6e 75 20 68 61 6e 64 |e File m|enu hand|
|00004570| 6c 65 0d 09 09 5f 47 65 | 74 4d 48 61 6e 64 6c 65 |le..._Ge|tMHandle|
|00004580| 0d 09 09 4d 4f 56 45 2e | 4c 09 28 53 50 29 2b 2c |...MOVE.|L.(SP)+,|
|00004590| 4d 65 6e 75 28 41 36 29 | 09 09 3b 20 73 61 76 65 |Menu(A6)|..; save|
|000045a0| 20 74 68 65 20 6d 65 6e | 75 20 68 61 6e 64 6c 65 | the men|u handle|
|000045b0| 0d 09 09 43 4c 52 2e 57 | 09 2d 28 53 50 29 09 09 |...CLR.W|.-(SP)..|
|000045c0| 09 3b 20 73 70 61 63 65 | 20 66 6f 72 20 72 65 73 |.; space| for res|
|000045d0| 75 6c 74 0d 09 09 4d 4f | 56 45 2e 4c 09 46 72 6f |ult...MO|VE.L.Fro|
|000045e0| 6e 74 4d 6f 73 74 28 41 | 36 29 2c 2d 28 53 50 29 |ntMost(A|6),-(SP)|
|000045f0| 0d 09 09 42 53 52 09 49 | 73 44 41 57 69 6e 64 6f |...BSR.I|sDAWindo|
|00004600| 77 0d 09 09 4d 4f 56 45 | 2e 57 09 28 53 50 29 2b |w...MOVE|.W.(SP)+|
|00004610| 2c 44 30 09 09 3b 20 67 | 65 74 20 74 68 65 20 72 |,D0..; g|et the r|
|00004620| 65 73 75 6c 74 20 6f 66 | 20 74 68 65 20 66 75 6e |esult of| the fun|
|00004630| 63 74 69 6f 6e 0d 09 09 | 43 4d 50 49 2e 57 09 23 |ction...|CMPI.W.#|
|00004640| 54 72 75 65 2c 44 30 09 | 09 3b 20 77 61 73 20 69 |True,D0.|.; was i|
|00004650| 74 20 74 68 65 20 44 41 | 20 77 69 6e 64 6f 77 3f |t the DA| window?|
|00004660| 0d 09 09 42 4e 45 2e 53 | 09 40 31 09 09 09 3b 20 |...BNE.S|.@1...; |
|00004670| 6e 6f 2c 20 74 68 65 6e | 20 64 69 73 61 62 6c 65 |no, then| disable|
|00004680| 20 74 68 65 20 63 6c 6f | 73 65 20 69 74 65 6d 0d | the clo|se item.|
|00004690| 0d 09 09 4d 4f 56 45 2e | 4c 09 4d 65 6e 75 28 41 |...MOVE.|L.Menu(A|
|000046a0| 36 29 2c 2d 28 53 50 29 | 09 09 3b 20 69 74 20 77 |6),-(SP)|..; it w|
|000046b0| 61 73 20 61 6e 20 61 70 | 70 6c 69 63 61 74 69 6f |as an ap|plicatio|
|000046c0| 6e 20 77 69 6e 64 6f 77 | 0d 09 09 4d 4f 56 45 2e |n window|...MOVE.|
|000046d0| 57 09 23 43 6c 6f 73 65 | 49 74 65 6d 2c 2d 28 53 |W.#Close|Item,-(S|
|000046e0| 50 29 0d 09 09 5f 45 6e | 61 62 6c 65 49 74 65 6d |P)..._En|ableItem|
|000046f0| 09 09 09 3b 20 65 6e 61 | 62 6c 65 20 74 68 65 20 |...; ena|ble the |
|00004700| 63 6c 6f 73 65 20 66 6f | 72 20 44 41 73 20 6f 6e |close fo|r DAs on|
|00004710| 6c 79 0d 09 09 42 52 41 | 2e 53 09 41 64 6a 75 73 |ly...BRA|.S.Adjus|
|00004720| 74 45 64 69 74 0d 0d 40 | 31 09 09 4d 4f 56 45 2e |tEdit..@|1..MOVE.|
|00004730| 4c 09 4d 65 6e 75 28 41 | 36 29 2c 2d 28 53 50 29 |L.Menu(A|6),-(SP)|
|00004740| 09 09 3b 20 69 74 20 77 | 61 73 20 6e 6f 74 20 61 |..; it w|as not a|
|00004750| 20 44 41 20 77 69 6e 64 | 6f 77 0d 09 09 4d 4f 56 | DA wind|ow...MOV|
|00004760| 45 2e 57 09 23 43 6c 6f | 73 65 49 74 65 6d 2c 2d |E.W.#Clo|seItem,-|
|00004770| 28 53 50 29 0d 09 09 5f | 44 69 73 61 62 6c 65 49 |(SP)..._|DisableI|
|00004780| 74 65 6d 09 09 09 3b 20 | 64 69 73 61 62 6c 65 20 |tem...; |disable |
|00004790| 63 6c 6f 73 65 20 66 6f | 72 20 61 6c 6c 20 6f 74 |close fo|r all ot|
|000047a0| 68 65 72 73 0d 0d 2a 20 | 2d 2d 2d 2d 2d 2d 2d 2d |hers..* |--------|
|000047b0| 2d 2d 2d 2d 2d 20 41 44 | 4a 55 53 54 20 54 48 45 |----- AD|JUST THE|
|000047c0| 20 45 44 49 54 20 4d 45 | 4e 55 20 2d 2d 2d 2d 2d | EDIT ME|NU -----|
|000047d0| 2d 2d 2d 2d 2d 2d 2d 2d | 0d 41 64 6a 75 73 74 45 |--------|.AdjustE|
|000047e0| 64 69 74 0d 09 09 43 4c | 52 2e 4c 09 2d 28 53 50 |dit...CL|R.L.-(SP|
|000047f0| 29 09 09 09 3b 20 73 70 | 61 63 65 20 66 6f 72 20 |)...; sp|ace for |
|00004800| 72 65 73 75 6c 74 0d 09 | 09 4d 4f 56 45 2e 57 09 |result..|.MOVE.W.|
|00004810| 23 45 64 69 74 4d 65 6e | 75 2c 2d 28 53 50 29 09 |#EditMen|u,-(SP).|
|00004820| 09 3b 20 67 65 74 20 74 | 68 65 20 45 64 69 74 20 |.; get t|he Edit |
|00004830| 6d 65 6e 75 20 68 61 6e | 64 6c 65 0d 09 09 5f 47 |menu han|dle..._G|
|00004840| 65 74 4d 48 61 6e 64 6c | 65 0d 09 09 4d 4f 56 45 |etMHandl|e...MOVE|
|00004850| 2e 4c 09 28 53 50 29 2b | 2c 4d 65 6e 75 28 41 36 |.L.(SP)+|,Menu(A6|
|00004860| 29 09 09 3b 20 73 61 76 | 65 20 74 68 65 20 6d 65 |)..; sav|e the me|
|00004870| 6e 75 20 68 61 6e 64 6c | 65 0d 09 09 43 4c 52 2e |nu handl|e...CLR.|
|00004880| 57 09 2d 28 53 50 29 09 | 09 09 3b 20 73 70 61 63 |W.-(SP).|..; spac|
|00004890| 65 20 66 6f 72 20 72 65 | 73 75 6c 74 0d 09 09 4d |e for re|sult...M|
|000048a0| 4f 56 45 2e 4c 09 46 72 | 6f 6e 74 4d 6f 73 74 28 |OVE.L.Fr|ontMost(|
|000048b0| 41 36 29 2c 2d 28 53 50 | 29 0d 09 09 42 53 52 09 |A6),-(SP|)...BSR.|
|000048c0| 49 73 44 41 57 69 6e 64 | 6f 77 0d 09 09 4d 4f 56 |IsDAWind|ow...MOV|
|000048d0| 45 2e 57 09 28 53 50 29 | 2b 2c 44 30 09 09 3b 20 |E.W.(SP)|+,D0..; |
|000048e0| 67 65 74 20 74 68 65 20 | 72 65 73 75 6c 74 20 6f |get the |result o|
|000048f0| 66 20 74 68 65 20 66 75 | 6e 63 74 69 6f 6e 0d 09 |f the fu|nction..|
|00004900| 09 43 4d 50 49 2e 57 09 | 23 54 72 75 65 2c 44 30 |.CMPI.W.|#True,D0|
|00004910| 09 09 3b 20 77 61 73 20 | 69 74 20 74 68 65 20 44 |..; was |it the D|
|00004920| 41 20 77 69 6e 64 6f 77 | 3f 0d 09 09 42 4e 45 2e |A window|?...BNE.|
|00004930| 53 09 40 32 09 09 09 3b | 20 6e 6f 2c 20 64 69 73 |S.@2...;| no, dis|
|00004940| 61 62 6c 65 20 74 68 65 | 20 65 64 69 74 20 6d 65 |able the| edit me|
|00004950| 6e 75 0d 0d 09 09 4d 4f | 56 45 2e 4c 09 4d 65 6e |nu....MO|VE.L.Men|
|00004960| 75 28 41 36 29 2c 2d 28 | 53 50 29 09 09 3b 20 69 |u(A6),-(|SP)..; i|
|00004970| 74 20 77 61 73 20 66 6f | 72 20 61 20 44 41 20 77 |t was fo|r a DA w|
|00004980| 69 6e 64 6f 77 0d 09 09 | 4d 4f 56 45 2e 57 09 23 |indow...|MOVE.W.#|
|00004990| 43 75 74 49 74 65 6d 2c | 2d 28 53 50 29 0d 09 09 |CutItem,|-(SP)...|
|000049a0| 5f 45 6e 61 62 6c 65 49 | 74 65 6d 09 09 09 3b 20 |_EnableI|tem...; |
|000049b0| 65 6e 61 62 6c 65 20 74 | 68 65 20 43 75 74 0d 09 |enable t|he Cut..|
|000049c0| 09 4d 4f 56 45 2e 4c 09 | 4d 65 6e 75 28 41 36 29 |.MOVE.L.|Menu(A6)|
|000049d0| 2c 2d 28 53 50 29 0d 09 | 09 4d 4f 56 45 2e 57 09 |,-(SP)..|.MOVE.W.|
|000049e0| 23 43 6f 70 79 49 74 65 | 6d 2c 2d 28 53 50 29 0d |#CopyIte|m,-(SP).|
|000049f0| 09 09 5f 45 6e 61 62 6c | 65 49 74 65 6d 09 09 09 |.._Enabl|eItem...|
|00004a00| 3b 20 65 6e 61 62 6c 65 | 20 74 68 65 20 43 6f 70 |; enable| the Cop|
|00004a10| 79 0d 09 09 4d 4f 56 45 | 2e 4c 09 4d 65 6e 75 28 |y...MOVE|.L.Menu(|
|00004a20| 41 36 29 2c 2d 28 53 50 | 29 0d 09 09 4d 4f 56 45 |A6),-(SP|)...MOVE|
|00004a30| 2e 57 09 23 50 61 73 74 | 65 49 74 65 6d 2c 2d 28 |.W.#Past|eItem,-(|
|00004a40| 53 50 29 0d 09 09 5f 45 | 6e 61 62 6c 65 49 74 65 |SP)..._E|nableIte|
|00004a50| 6d 09 09 09 3b 20 65 6e | 61 62 6c 65 20 74 68 65 |m...; en|able the|
|00004a60| 20 50 61 73 74 65 0d 09 | 09 4d 4f 56 45 2e 4c 09 | Paste..|.MOVE.L.|
|00004a70| 4d 65 6e 75 28 41 36 29 | 2c 2d 28 53 50 29 0d 09 |Menu(A6)|,-(SP)..|
|00004a80| 09 4d 4f 56 45 2e 57 09 | 23 43 6c 65 61 72 49 74 |.MOVE.W.|#ClearIt|
|00004a90| 65 6d 2c 2d 28 53 50 29 | 0d 09 09 5f 45 6e 61 62 |em,-(SP)|..._Enab|
|00004aa0| 6c 65 49 74 65 6d 09 09 | 09 3b 20 65 6e 61 62 6c |leItem..|.; enabl|
|00004ab0| 65 20 74 68 65 20 43 6c | 65 61 72 0d 09 09 42 52 |e the Cl|ear...BR|
|00004ac0| 41 2e 53 09 41 64 6a 75 | 73 74 4c 69 67 68 74 09 |A.S.Adju|stLight.|
|00004ad0| 09 3b 20 64 6f 6e 65 20 | 77 69 74 68 20 74 68 65 |.; done |with the|
|00004ae0| 20 65 64 69 74 20 6d 65 | 6e 75 0d 0d 40 32 09 09 | edit me|nu..@2..|
|00004af0| 4d 4f 56 45 2e 4c 09 4d | 65 6e 75 28 41 36 29 2c |MOVE.L.M|enu(A6),|
|00004b00| 2d 28 53 50 29 09 09 3b | 20 64 69 73 61 62 6c 65 |-(SP)..;| disable|
|00004b10| 20 74 68 65 20 65 64 69 | 74 20 6d 65 6e 75 0d 09 | the edi|t menu..|
|00004b20| 09 4d 4f 56 45 2e 57 09 | 23 55 6e 64 6f 49 74 65 |.MOVE.W.|#UndoIte|
|00004b30| 6d 2c 2d 28 53 50 29 0d | 09 09 5f 44 69 73 61 62 |m,-(SP).|.._Disab|
|00004b40| 6c 65 49 74 65 6d 09 09 | 09 3b 20 64 69 73 61 62 |leItem..|.; disab|
|00004b50| 6c 65 20 74 68 65 20 55 | 6e 64 6f 0d 09 09 4d 4f |le the U|ndo...MO|
|00004b60| 56 45 2e 4c 09 4d 65 6e | 75 28 41 36 29 2c 2d 28 |VE.L.Men|u(A6),-(|
|00004b70| 53 50 29 0d 09 09 4d 4f | 56 45 2e 57 09 23 43 75 |SP)...MO|VE.W.#Cu|
|00004b80| 74 49 74 65 6d 2c 2d 28 | 53 50 29 0d 09 09 5f 44 |tItem,-(|SP)..._D|
|00004b90| 69 73 61 62 6c 65 49 74 | 65 6d 09 09 09 3b 20 64 |isableIt|em...; d|
|00004ba0| 69 73 61 62 6c 65 20 74 | 68 65 20 43 75 74 0d 09 |isable t|he Cut..|
|00004bb0| 09 4d 4f 56 45 2e 4c 09 | 4d 65 6e 75 28 41 36 29 |.MOVE.L.|Menu(A6)|
|00004bc0| 2c 2d 28 53 50 29 0d 09 | 09 4d 4f 56 45 2e 57 09 |,-(SP)..|.MOVE.W.|
|00004bd0| 23 43 6f 70 79 49 74 65 | 6d 2c 2d 28 53 50 29 0d |#CopyIte|m,-(SP).|
|00004be0| 09 09 5f 44 69 73 61 62 | 6c 65 49 74 65 6d 09 09 |.._Disab|leItem..|
|00004bf0| 09 3b 20 64 69 73 61 62 | 6c 65 20 74 68 65 20 43 |.; disab|le the C|
|00004c00| 6f 70 79 0d 09 09 4d 4f | 56 45 2e 4c 09 4d 65 6e |opy...MO|VE.L.Men|
|00004c10| 75 28 41 36 29 2c 2d 28 | 53 50 29 0d 09 09 4d 4f |u(A6),-(|SP)...MO|
|00004c20| 56 45 2e 57 09 23 50 61 | 73 74 65 49 74 65 6d 2c |VE.W.#Pa|steItem,|
|00004c30| 2d 28 53 50 29 0d 09 09 | 5f 44 69 73 61 62 6c 65 |-(SP)...|_Disable|
|00004c40| 49 74 65 6d 09 09 09 3b | 20 64 69 73 61 62 6c 65 |Item...;| disable|
|00004c50| 20 74 68 65 20 50 61 73 | 74 65 0d 09 09 4d 4f 56 | the Pas|te...MOV|
|00004c60| 45 2e 4c 09 4d 65 6e 75 | 28 41 36 29 2c 2d 28 53 |E.L.Menu|(A6),-(S|
|00004c70| 50 29 0d 09 09 4d 4f 56 | 45 2e 57 09 23 43 6c 65 |P)...MOV|E.W.#Cle|
|00004c80| 61 72 49 74 65 6d 2c 2d | 28 53 50 29 0d 09 09 5f |arItem,-|(SP)..._|
|00004c90| 44 69 73 61 62 6c 65 49 | 74 65 6d 09 09 09 3b 20 |DisableI|tem...; |
|00004ca0| 64 69 73 61 62 6c 65 20 | 74 68 65 20 43 6c 65 61 |disable |the Clea|
|00004cb0| 72 0d 0d 2a 20 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |r..* ---|--------|
|00004cc0| 2d 2d 20 41 44 4a 55 53 | 54 20 54 48 45 20 4c 49 |-- ADJUS|T THE LI|
|00004cd0| 47 48 54 20 4d 45 4e 55 | 20 2d 2d 2d 2d 2d 2d 2d |GHT MENU| -------|
|00004ce0| 2d 2d 2d 2d 2d 2d 0d 41 | 64 6a 75 73 74 4c 69 67 |------.A|djustLig|
|00004cf0| 68 74 0d 09 09 43 4c 52 | 2e 4c 09 2d 28 53 50 29 |ht...CLR|.L.-(SP)|
|00004d00| 09 09 09 3b 20 73 70 61 | 63 65 20 66 6f 72 20 72 |...; spa|ce for r|
|00004d10| 65 73 75 6c 74 0d 09 09 | 4d 4f 56 45 2e 57 09 23 |esult...|MOVE.W.#|
|00004d20| 4c 69 67 68 74 4d 65 6e | 75 2c 2d 28 53 50 29 09 |LightMen|u,-(SP).|
|00004d30| 3b 20 67 65 74 20 74 68 | 65 20 45 64 69 74 20 6d |; get th|e Edit m|
|00004d40| 65 6e 75 20 68 61 6e 64 | 6c 65 0d 09 09 5f 47 65 |enu hand|le..._Ge|
|00004d50| 74 4d 48 61 6e 64 6c 65 | 0d 09 09 4d 4f 56 45 2e |tMHandle|...MOVE.|
|00004d60| 4c 09 28 53 50 29 2b 2c | 4d 65 6e 75 28 41 36 29 |L.(SP)+,|Menu(A6)|
|00004d70| 09 09 3b 20 73 61 76 65 | 20 74 68 65 20 6d 65 6e |..; save| the men|
|00004d80| 75 20 68 61 6e 64 6c 65 | 0d 09 09 43 4c 52 2e 57 |u handle|...CLR.W|
|00004d90| 09 2d 28 53 50 29 09 09 | 09 3b 20 73 70 61 63 65 |.-(SP)..|.; space|
|00004da0| 20 66 6f 72 20 72 65 73 | 75 6c 74 0d 09 09 4d 4f | for res|ult...MO|
|00004db0| 56 45 2e 4c 09 46 72 6f | 6e 74 4d 6f 73 74 28 41 |VE.L.Fro|ntMost(A|
|00004dc0| 36 29 2c 2d 28 53 50 29 | 09 3b 20 74 68 65 20 66 |6),-(SP)|.; the f|
|00004dd0| 72 6f 6e 74 20 77 69 6e | 64 6f 77 0d 09 09 42 53 |ront win|dow...BS|
|00004de0| 52 09 49 73 41 70 70 57 | 69 6e 64 6f 77 0d 09 09 |R.IsAppW|indow...|
|00004df0| 4d 4f 56 45 2e 57 09 28 | 53 50 29 2b 2c 44 33 09 |MOVE.W.(|SP)+,D3.|
|00004e00| 09 3b 20 73 61 76 65 20 | 74 68 65 20 72 65 73 75 |.; save |the resu|
|00004e10| 6c 74 20 6f 66 20 74 68 | 65 20 66 75 6e 63 74 69 |lt of th|e functi|
|00004e20| 6f 6e 0d 09 09 43 4d 50 | 49 2e 57 09 23 54 72 75 |on...CMP|I.W.#Tru|
|00004e30| 65 2c 44 33 09 09 3b 20 | 77 61 73 20 6f 75 72 20 |e,D3..; |was our |
|00004e40| 77 69 6e 64 6f 77 20 69 | 6e 20 66 72 6f 6e 74 3f |window i|n front?|
|00004e50| 0d 09 09 42 4e 45 2e 53 | 09 40 33 09 09 09 3b 20 |...BNE.S|.@3...; |
|00004e60| 6e 6f 2c 20 64 69 73 61 | 62 6c 65 20 74 68 65 20 |no, disa|ble the |
|00004e70| 6d 65 6e 75 20 69 74 65 | 6d 73 0d 0d 09 09 4d 4f |menu ite|ms....MO|
|00004e80| 56 45 2e 4c 09 4d 65 6e | 75 28 41 36 29 2c 2d 28 |VE.L.Men|u(A6),-(|
|00004e90| 53 50 29 09 09 3b 20 65 | 6e 61 62 6c 65 20 74 68 |SP)..; e|nable th|
|00004ea0| 65 20 6c 69 67 68 74 20 | 6d 65 6e 75 0d 09 09 4d |e light |menu...M|
|00004eb0| 4f 56 45 2e 57 09 23 53 | 74 6f 70 49 74 65 6d 2c |OVE.W.#S|topItem,|
|00004ec0| 2d 28 53 50 29 0d 09 09 | 5f 45 6e 61 62 6c 65 49 |-(SP)...|_EnableI|
|00004ed0| 74 65 6d 09 09 09 3b 20 | 65 6e 61 62 6c 65 20 74 |tem...; |enable t|
|00004ee0| 68 65 20 73 74 6f 70 0d | 09 09 4d 4f 56 45 2e 4c |he stop.|..MOVE.L|
|00004ef0| 09 4d 65 6e 75 28 41 36 | 29 2c 2d 28 53 50 29 0d |.Menu(A6|),-(SP).|
|00004f00| 09 09 4d 4f 56 45 2e 57 | 09 23 47 6f 49 74 65 6d |..MOVE.W|.#GoItem|
|00004f10| 2c 2d 28 53 50 29 0d 09 | 09 5f 45 6e 61 62 6c 65 |,-(SP)..|._Enable|
|00004f20| 49 74 65 6d 09 09 09 3b | 20 65 6e 61 62 6c 65 20 |Item...;| enable |
|00004f30| 74 68 65 20 67 6f 20 66 | 6f 72 20 6f 75 72 20 77 |the go f|or our w|
|00004f40| 69 6e 64 6f 77 0d 09 09 | 42 52 41 2e 53 09 40 34 |indow...|BRA.S.@4|
|00004f50| 09 09 09 3b 20 6e 6f 77 | 20 63 68 65 63 6b 20 74 |...; now| check t|
|00004f60| 68 65 20 6d 65 6e 75 20 | 69 74 65 6d 73 0d 0d 40 |he menu |items..@|
|00004f70| 33 09 09 4d 4f 56 45 2e | 4c 09 4d 65 6e 75 28 41 |3..MOVE.|L.Menu(A|
|00004f80| 36 29 2c 2d 28 53 50 29 | 09 09 3b 20 64 69 73 61 |6),-(SP)|..; disa|
|00004f90| 62 6c 65 20 74 68 65 20 | 6c 69 67 68 74 20 6d 65 |ble the |light me|
|00004fa0| 6e 75 0d 09 09 4d 4f 56 | 45 2e 57 09 23 53 74 6f |nu...MOV|E.W.#Sto|
|00004fb0| 70 49 74 65 6d 2c 2d 28 | 53 50 29 0d 09 09 5f 44 |pItem,-(|SP)..._D|
|00004fc0| 69 73 61 62 6c 65 49 74 | 65 6d 09 09 09 3b 20 64 |isableIt|em...; d|
|00004fd0| 69 73 61 62 6c 65 20 74 | 68 65 20 73 74 6f 70 0d |isable t|he stop.|
|00004fe0| 09 09 4d 4f 56 45 2e 4c | 09 4d 65 6e 75 28 41 36 |..MOVE.L|.Menu(A6|
|00004ff0| 29 2c 2d 28 53 50 29 0d | 09 09 4d 4f 56 45 2e 57 |),-(SP).|..MOVE.W|
|00005000| 09 23 47 6f 49 74 65 6d | 2c 2d 28 53 50 29 0d 09 |.#GoItem|,-(SP)..|
|00005010| 09 5f 44 69 73 61 62 6c | 65 49 74 65 6d 09 09 09 |._Disabl|eItem...|
|00005020| 3b 20 64 69 73 61 62 6c | 65 20 74 68 65 20 67 6f |; disabl|e the go|
|00005030| 0d 09 09 42 52 41 2e 53 | 09 45 78 69 74 09 09 09 |...BRA.S|.Exit...|
|00005040| 3b 20 6e 6f 74 68 69 6e | 67 20 74 6f 20 63 68 65 |; nothin|g to che|
|00005050| 63 6b 2c 20 67 65 74 20 | 6f 75 74 20 6f 66 20 68 |ck, get |out of h|
|00005060| 65 72 65 0d 0d 40 34 09 | 09 4d 4f 56 45 2e 57 09 |ere..@4.|.MOVE.W.|
|00005070| 47 2e 53 74 6f 70 70 65 | 64 2c 44 30 09 09 3b 20 |G.Stoppe|d,D0..; |
|00005080| 67 65 74 20 74 68 65 20 | 63 75 72 72 65 6e 74 20 |get the |current |
|00005090| 73 74 61 74 65 20 6f 66 | 20 74 68 65 20 6c 69 67 |state of| the lig|
|000050a0| 68 74 0d 09 09 43 4d 50 | 49 2e 57 09 23 54 72 75 |ht...CMP|I.W.#Tru|
|000050b0| 65 2c 44 30 09 09 3b 20 | 69 73 20 74 68 65 20 73 |e,D0..; |is the s|
|000050c0| 74 6f 70 20 6c 69 67 68 | 74 20 6f 6e 3f 0d 09 09 |top ligh|t on?...|
|000050d0| 42 4e 45 2e 53 09 40 35 | 09 09 09 3b 20 6e 6f 2c |BNE.S.@5|...; no,|
|000050e0| 20 74 68 65 20 67 72 65 | 65 6e 20 6c 69 67 68 74 | the gre|en light|
|000050f0| 20 69 73 20 6f 6e 0d 0d | 09 09 4d 4f 56 45 2e 4c | is on..|..MOVE.L|
|00005100| 09 4d 65 6e 75 28 41 36 | 29 2c 2d 28 53 50 29 09 |.Menu(A6|),-(SP).|
|00005110| 09 3b 20 73 65 74 20 6d | 65 6e 75 20 74 6f 20 72 |.; set m|enu to r|
|00005120| 65 64 20 6c 69 67 68 74 | 20 3d 20 6f 6e 0d 09 09 |ed light| = on...|
|00005130| 4d 4f 56 45 2e 57 09 23 | 53 74 6f 70 49 74 65 6d |MOVE.W.#|StopItem|
|00005140| 2c 2d 28 53 50 29 0d 09 | 09 4d 4f 56 45 2e 57 09 |,-(SP)..|.MOVE.W.|
|00005150| 23 54 72 75 65 2c 2d 28 | 53 50 29 0d 09 09 5f 43 |#True,-(|SP)..._C|
|00005160| 68 65 63 6b 49 74 65 6d | 09 09 09 3b 20 63 68 65 |heckItem|...; che|
|00005170| 63 6b 20 74 68 65 20 53 | 74 6f 70 49 74 65 6d 20 |ck the S|topItem |
|00005180| 69 6e 20 74 68 65 20 6d | 65 6e 75 0d 09 09 4d 4f |in the m|enu...MO|
|00005190| 56 45 2e 4c 09 4d 65 6e | 75 28 41 36 29 2c 2d 28 |VE.L.Men|u(A6),-(|
|000051a0| 53 50 29 0d 09 09 4d 4f | 56 45 2e 57 09 23 47 6f |SP)...MO|VE.W.#Go|
|000051b0| 49 74 65 6d 2c 2d 28 53 | 50 29 0d 09 09 4d 4f 56 |Item,-(S|P)...MOV|
|000051c0| 45 2e 57 09 23 46 61 6c | 73 65 2c 2d 28 53 50 29 |E.W.#Fal|se,-(SP)|
|000051d0| 0d 09 09 5f 43 68 65 63 | 6b 49 74 65 6d 09 09 09 |..._Chec|kItem...|
|000051e0| 3b 20 75 6e 2d 63 68 65 | 63 6b 20 74 68 65 20 47 |; un-che|ck the G|
|000051f0| 6f 49 74 65 6d 20 69 6e | 20 74 68 65 20 6d 65 6e |oItem in| the men|
|00005200| 75 0d 09 09 42 52 41 2e | 53 09 45 78 69 74 09 09 |u...BRA.|S.Exit..|
|00005210| 09 3b 20 6e 6f 77 20 77 | 65 27 72 65 20 64 6f 6e |.; now w|e're don|
|00005220| 65 2c 20 67 65 74 20 6f | 75 74 20 6f 66 20 68 65 |e, get o|ut of he|
|00005230| 72 65 0d 0d 40 35 09 09 | 4d 4f 56 45 2e 4c 09 4d |re..@5..|MOVE.L.M|
|00005240| 65 6e 75 28 41 36 29 2c | 2d 28 53 50 29 09 09 3b |enu(A6),|-(SP)..;|
|00005250| 20 73 65 74 20 6d 65 6e | 75 20 74 6f 20 67 72 65 | set men|u to gre|
|00005260| 65 6e 20 6c 69 67 68 74 | 20 3d 20 6f 6e 0d 09 09 |en light| = on...|
|00005270| 4d 4f 56 45 2e 57 09 23 | 53 74 6f 70 49 74 65 6d |MOVE.W.#|StopItem|
|00005280| 2c 2d 28 53 50 29 0d 09 | 09 4d 4f 56 45 2e 57 09 |,-(SP)..|.MOVE.W.|
|00005290| 23 46 61 6c 73 65 2c 2d | 28 53 50 29 0d 09 09 5f |#False,-|(SP)..._|
|000052a0| 43 68 65 63 6b 49 74 65 | 6d 09 09 09 3b 20 75 6e |CheckIte|m...; un|
|000052b0| 2d 63 68 65 63 6b 20 74 | 68 65 20 53 74 6f 70 49 |-check t|he StopI|
|000052c0| 74 65 6d 20 69 6e 20 74 | 68 65 20 6d 65 6e 75 0d |tem in t|he menu.|
|000052d0| 09 09 4d 4f 56 45 2e 4c | 09 4d 65 6e 75 28 41 36 |..MOVE.L|.Menu(A6|
|000052e0| 29 2c 2d 28 53 50 29 0d | 09 09 4d 4f 56 45 2e 57 |),-(SP).|..MOVE.W|
|000052f0| 09 23 47 6f 49 74 65 6d | 2c 2d 28 53 50 29 0d 09 |.#GoItem|,-(SP)..|
|00005300| 09 4d 4f 56 45 2e 57 09 | 23 54 72 75 65 2c 2d 28 |.MOVE.W.|#True,-(|
|00005310| 53 50 29 0d 09 09 5f 43 | 68 65 63 6b 49 74 65 6d |SP)..._C|heckItem|
|00005320| 09 09 09 3b 20 63 68 65 | 63 6b 20 74 68 65 20 47 |...; che|ck the G|
|00005330| 6f 49 74 65 6d 20 69 6e | 20 74 68 65 20 6d 65 6e |oItem in| the men|
|00005340| 75 0d 0d 45 78 69 74 09 | 09 55 4e 4c 4b 09 41 36 |u..Exit.|.UNLK.A6|
|00005350| 09 09 09 3b 20 64 65 73 | 74 72 6f 79 20 74 68 65 |...; des|troy the|
|00005360| 20 6c 69 6e 6b 0d 09 09 | 4d 4f 56 45 41 2e 4c 09 | link...|MOVEA.L.|
|00005370| 28 53 50 29 2b 2c 41 30 | 09 09 3b 20 70 75 6c 6c |(SP)+,A0|..; pull|
|00005380| 20 6f 66 66 20 74 68 65 | 20 72 65 74 75 72 6e 20 | off the| return |
|00005390| 61 64 64 72 65 73 73 0d | 09 09 41 44 44 41 2e 4c |address.|..ADDA.L|
|000053a0| 09 23 50 61 72 61 6d 53 | 69 7a 65 2c 53 50 09 09 |.#ParamS|ize,SP..|
|000053b0| 3b 20 73 74 72 69 70 20 | 61 6c 6c 20 6f 66 20 74 |; strip |all of t|
|000053c0| 68 65 20 63 61 6c 6c 65 | 72 27 73 20 70 61 72 61 |he calle|r's para|
|000053d0| 6d 65 74 65 72 73 0d 09 | 09 4a 4d 50 09 28 41 30 |meters..|.JMP.(A0|
|000053e0| 29 09 09 09 3b 20 72 65 | 74 75 72 6e 20 74 6f 20 |)...; re|turn to |
|000053f0| 74 68 65 20 63 61 6c 6c | 65 72 0d 0d 09 09 44 62 |the call|er....Db|
|00005400| 67 49 6e 66 6f 09 41 64 | 6a 73 74 4d 6e 75 09 09 |gInfo.Ad|jstMnu..|
|00005410| 3b 20 74 68 69 73 20 6e | 61 6d 65 20 77 69 6c 6c |; this n|ame will|
|00005420| 20 61 70 70 65 61 72 20 | 69 6e 20 74 68 65 20 64 | appear |in the d|
|00005430| 65 62 75 67 67 65 72 0d | 09 09 45 4e 44 50 0d 0d |ebugger.|..ENDP..|
|00005440| 2a 20 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |* ======|========|
|00005450| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005460| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005470| 3d 3d 0d 2a 20 50 52 4f | 43 45 44 55 52 45 20 44 |==.* PRO|CEDURE D|
|00005480| 72 61 77 57 69 6e 64 6f | 77 28 77 69 6e 64 6f 77 |rawWindo|w(window|
|00005490| 3a 20 57 69 6e 64 6f 77 | 50 74 72 29 3b 0d 2a 20 |: Window|Ptr);.* |
|000054a0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000054b0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000054c0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000054d0| 0d 2a 20 44 72 61 77 20 | 74 68 65 20 63 6f 6e 74 |.* Draw |the cont|
|000054e0| 65 6e 74 73 20 6f 66 20 | 74 68 65 20 61 70 70 6c |ents of |the appl|
|000054f0| 69 63 61 74 69 6f 6e 27 | 73 20 77 69 6e 64 6f 77 |ication'|s window|
|00005500| 2e 20 57 65 20 64 6f 20 | 73 6f 6d 65 20 64 72 61 |. We do |some dra|
|00005510| 77 69 6e 67 20 69 6e 20 | 63 6f 6c 6f 72 2c 0d 2a |wing in |color,.*|
|00005520| 20 75 73 69 6e 67 20 43 | 6c 61 73 73 69 63 20 51 | using C|lassic Q|
|00005530| 75 69 63 6b 44 72 61 77 | 27 73 20 63 6f 6c 6f 72 |uickDraw|'s color|
|00005540| 20 63 61 70 61 62 69 6c | 69 74 69 65 73 2e 20 54 | capabil|ities. T|
|00005550| 68 69 73 20 77 69 6c 6c | 20 62 65 20 62 6c 61 63 |his will| be blac|
|00005560| 6b 20 61 6e 64 20 77 68 | 69 74 65 20 6f 6e 0d 2a |k and wh|ite on.*|
|00005570| 20 6f 6c 64 20 6d 61 63 | 68 69 6e 65 73 2c 20 62 | old mac|hines, b|
|00005580| 75 74 20 63 6f 6c 6f 72 | 20 6f 6e 20 63 6f 6c 6f |ut color| on colo|
|00005590| 72 20 6d 61 63 68 69 6e | 65 73 2e 20 54 68 65 20 |r machin|es. The |
|000055a0| 77 69 6e 64 6f 77 27 73 | 20 76 69 73 52 67 6e 20 |window's| visRgn |
|000055b0| 68 61 73 20 62 65 65 6e | 20 73 65 74 20 62 79 0d |has been| set by.|
|000055c0| 2a 20 74 68 65 20 55 70 | 64 61 74 65 20 72 6f 75 |* the Up|date rou|
|000055d0| 74 69 6e 65 20 74 6f 20 | 63 61 75 73 65 20 64 72 |tine to |cause dr|
|000055e0| 61 77 69 6e 67 20 6f 6e | 6c 79 20 77 68 65 72 65 |awing on|ly where|
|000055f0| 20 69 74 20 6e 65 65 64 | 73 20 74 6f 20 62 65 20 | it need|s to be |
|00005600| 64 6f 6e 65 2e 0d 0d 09 | 09 53 45 47 09 27 4d 61 |done....|.SEG.'Ma|
|00005610| 69 6e 27 09 09 09 3b 20 | 63 61 73 65 20 73 65 6e |in'...; |case sen|
|00005620| 73 69 74 69 76 65 0d 44 | 72 61 77 57 69 6e 64 6f |sitive.D|rawWindo|
|00005630| 77 09 50 52 4f 43 09 45 | 58 50 4f 52 54 09 09 09 |w.PROC.E|XPORT...|
|00005640| 3b 20 61 6e 79 20 73 6f | 75 72 63 65 20 66 69 6c |; any so|urce fil|
|00005650| 65 20 63 61 6e 20 75 73 | 65 20 74 68 69 73 20 72 |e can us|e this r|
|00005660| 6f 75 74 69 6e 65 0d 0d | 53 74 61 63 6b 46 72 61 |outine..|StackFra|
|00005670| 6d 65 09 52 45 43 4f 52 | 44 09 7b 41 36 4c 69 6e |me.RECOR|D.{A6Lin|
|00005680| 6b 7d 2c 44 45 43 52 09 | 09 3b 20 62 75 69 6c 64 |k},DECR.|.; build|
|00005690| 20 61 20 73 74 61 63 6b | 20 66 72 61 6d 65 20 72 | a stack| frame r|
|000056a0| 65 63 6f 72 64 0d 50 61 | 72 61 6d 42 65 67 69 6e |ecord.Pa|ramBegin|
|000056b0| 09 45 51 55 09 2a 09 09 | 09 3b 20 73 74 61 72 74 |.EQU.*..|.; start|
|000056c0| 20 70 61 72 61 6d 65 74 | 65 72 73 20 61 66 74 65 | paramet|ers afte|
|000056d0| 72 20 74 68 69 73 20 70 | 6f 69 6e 74 0d 57 69 6e |r this p|oint.Win|
|000056e0| 64 6f 77 50 74 72 09 44 | 53 2e 4c 09 31 09 09 09 |dowPtr.D|S.L.1...|
|000056f0| 3b 20 70 61 73 73 65 64 | 20 70 61 72 61 6d 65 74 |; passed| paramet|
|00005700| 65 72 20 6f 66 20 74 68 | 65 20 77 69 6e 64 6f 77 |er of th|e window|
|00005710| 20 70 6f 69 6e 74 65 72 | 0d 50 61 72 61 6d 53 69 | pointer|.ParamSi|
|00005720| 7a 65 09 45 51 55 09 50 | 61 72 61 6d 42 65 67 69 |ze.EQU.P|aramBegi|
|00005730| 6e 2d 2a 09 09 3b 20 73 | 69 7a 65 20 6f 66 20 61 |n-*..; s|ize of a|
|00005740| 6c 6c 20 74 68 65 20 70 | 61 73 73 65 64 20 70 61 |ll the p|assed pa|
|00005750| 72 61 6d 65 74 65 72 73 | 0d 52 65 74 41 64 64 72 |rameters|.RetAddr|
|00005760| 20 09 44 53 2e 4c 09 31 | 09 09 09 3b 20 70 6c 61 | .DS.L.1|...; pla|
|00005770| 63 65 20 68 6f 6c 64 65 | 72 20 66 6f 72 20 72 65 |ce holde|r for re|
|00005780| 74 75 72 6e 20 61 64 64 | 72 65 73 73 0d 41 36 4c |turn add|ress.A6L|
|00005790| 69 6e 6b 09 09 44 53 2e | 4c 09 31 09 09 09 3b 20 |ink..DS.|L.1...; |
|000057a0| 70 6c 61 63 65 20 68 6f | 6c 64 65 72 20 66 6f 72 |place ho|lder for|
|000057b0| 20 41 36 20 6c 69 6e 6b | 0d 4c 6f 63 61 6c 53 69 | A6 link|.LocalSi|
|000057c0| 7a 65 09 45 51 55 20 09 | 2a 09 09 09 3b 20 73 69 |ze.EQU .|*...; si|
|000057d0| 7a 65 20 6f 66 20 61 6c | 6c 20 74 68 65 20 6c 6f |ze of al|l the lo|
|000057e0| 63 61 6c 20 76 61 72 69 | 61 62 6c 65 73 0d 09 09 |cal vari|ables...|
|000057f0| 45 4e 44 52 0d 0d 09 09 | 57 49 54 48 09 53 74 61 |ENDR....|WITH.Sta|
|00005800| 63 6b 46 72 61 6d 65 09 | 09 3b 20 63 6f 76 65 72 |ckFrame.|.; cover|
|00005810| 20 6f 75 72 20 6c 6f 63 | 61 6c 20 73 74 61 63 6b | our loc|al stack|
|00005820| 20 66 72 61 6d 65 0d 09 | 09 4c 49 4e 4b 09 41 36 | frame..|.LINK.A6|
|00005830| 2c 23 4c 6f 63 61 6c 53 | 69 7a 65 09 09 3b 20 61 |,#LocalS|ize..; a|
|00005840| 6c 6c 6f 63 61 74 65 20 | 6f 75 72 20 6c 6f 63 61 |llocate |our loca|
|00005850| 6c 20 73 74 61 63 6b 20 | 66 72 61 6d 65 0d 0d 09 |l stack |frame...|
|00005860| 09 4d 4f 56 45 2e 4c 09 | 57 69 6e 64 6f 77 50 74 |.MOVE.L.|WindowPt|
|00005870| 72 28 41 36 29 2c 2d 28 | 53 50 29 0d 09 09 5f 53 |r(A6),-(|SP)..._S|
|00005880| 65 74 50 6f 72 74 09 09 | 09 3b 20 73 65 74 20 74 |etPort..|.; set t|
|00005890| 68 65 20 63 75 72 72 65 | 6e 74 20 70 6f 72 74 20 |he curre|nt port |
|000058a0| 74 6f 20 75 73 0d 09 09 | 4d 4f 56 45 41 2e 4c 09 |to us...|MOVEA.L.|
|000058b0| 57 69 6e 64 6f 77 50 74 | 72 28 41 36 29 2c 41 30 |WindowPt|r(A6),A0|
|000058c0| 09 3b 20 65 72 61 73 65 | 20 74 68 65 20 65 6e 74 |.; erase| the ent|
|000058d0| 69 72 65 20 77 69 6e 64 | 6f 77 0d 09 09 50 45 41 |ire wind|ow...PEA|
|000058e0| 09 70 6f 72 74 52 65 63 | 74 28 41 30 29 09 09 3b |.portRec|t(A0)..;|
|000058f0| 20 74 68 65 20 77 69 6e | 64 6f 77 27 73 20 72 65 | the win|dow's re|
|00005900| 63 74 0d 09 09 5f 45 72 | 61 73 65 52 65 63 74 09 |ct..._Er|aseRect.|
|00005910| 09 09 3b 20 63 6c 65 61 | 72 20 6f 75 74 20 61 6e |..; clea|r out an|
|00005920| 79 74 68 69 6e 67 20 72 | 65 6d 61 69 6e 69 6e 67 |ything r|emaining|
|00005930| 0d 09 09 4d 4f 56 45 2e | 57 09 47 2e 53 74 6f 70 |...MOVE.|W.G.Stop|
|00005940| 70 65 64 2c 44 30 09 09 | 3b 20 66 69 6e 64 20 74 |ped,D0..|; find t|
|00005950| 68 65 20 73 74 61 74 65 | 20 6f 66 20 74 68 65 20 |he state| of the |
|00005960| 6c 69 67 68 74 73 0d 09 | 09 43 4d 50 49 2e 57 09 |lights..|.CMPI.W.|
|00005970| 23 54 72 75 65 2c 44 30 | 0d 09 09 42 4e 45 2e 53 |#True,D0|...BNE.S|
|00005980| 09 40 31 09 09 09 3b 20 | 72 65 64 20 6c 69 67 68 |.@1...; |red ligh|
|00005990| 74 20 73 68 6f 75 6c 64 | 20 62 65 20 6f 66 66 0d |t should| be off.|
|000059a0| 0d 2a 20 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |.* -----|--------|
|000059b0| 20 52 45 44 20 4c 49 47 | 48 54 20 2d 2d 2d 2d 2d | RED LIG|HT -----|
|000059c0| 2d 2d 2d 2d 2d 2d 2d 2d | 0d 0d 09 09 4d 4f 56 45 |--------|....MOVE|
|000059d0| 2e 4c 09 23 72 65 64 43 | 6f 6c 6f 72 2c 2d 28 53 |.L.#redC|olor,-(S|
|000059e0| 50 29 09 09 3b 20 6d 61 | 6b 65 20 74 68 65 20 72 |P)..; ma|ke the r|
|000059f0| 65 64 20 6c 69 67 68 74 | 20 67 6f 20 6f 6e 0d 09 |ed light| go on..|
|00005a00| 09 5f 46 6f 72 65 43 6f | 6c 6f 72 0d 09 09 50 45 |._ForeCo|lor...PE|
|00005a10| 41 09 47 2e 53 74 6f 70 | 52 65 63 74 0d 09 09 5f |A.G.Stop|Rect..._|
|00005a20| 50 61 69 6e 74 4f 76 61 | 6c 0d 09 09 4d 4f 56 45 |PaintOva|l...MOVE|
|00005a30| 2e 4c 09 23 77 68 69 74 | 65 43 6f 6c 6f 72 2c 2d |.L.#whit|eColor,-|
|00005a40| 28 53 50 29 09 3b 20 6d | 61 6b 65 20 74 68 65 20 |(SP).; m|ake the |
|00005a50| 67 72 65 65 6e 20 6c 69 | 67 68 74 20 67 6f 20 6f |green li|ght go o|
|00005a60| 66 66 0d 09 09 5f 46 6f | 72 65 43 6f 6c 6f 72 0d |ff..._Fo|reColor.|
|00005a70| 09 09 50 45 41 09 47 2e | 47 6f 52 65 63 74 0d 09 |..PEA.G.|GoRect..|
|00005a80| 09 5f 50 61 69 6e 74 4f | 76 61 6c 0d 09 09 42 52 |._PaintO|val...BR|
|00005a90| 41 2e 53 09 40 32 0d 0d | 2a 20 2d 2d 2d 2d 2d 2d |A.S.@2..|* ------|
|00005aa0| 2d 2d 2d 2d 2d 2d 2d 20 | 47 52 45 45 4e 20 4c 49 |------- |GREEN LI|
|00005ab0| 47 48 54 20 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |GHT ----|--------|
|00005ac0| 2d 0d 0d 40 31 09 09 4d | 4f 56 45 2e 4c 09 23 67 |-..@1..M|OVE.L.#g|
|00005ad0| 72 65 65 6e 43 6f 6c 6f | 72 2c 2d 28 53 50 29 09 |reenColo|r,-(SP).|
|00005ae0| 3b 20 6d 61 6b 65 20 74 | 68 65 20 67 72 65 65 6e |; make t|he green|
|00005af0| 20 6c 69 67 68 74 20 67 | 6f 20 6f 6e 0d 09 09 5f | light g|o on..._|
|00005b00| 46 6f 72 65 43 6f 6c 6f | 72 0d 09 09 50 45 41 09 |ForeColo|r...PEA.|
|00005b10| 47 2e 47 6f 52 65 63 74 | 0d 09 09 5f 50 61 69 6e |G.GoRect|..._Pain|
|00005b20| 74 4f 76 61 6c 0d 09 09 | 4d 4f 56 45 2e 4c 09 23 |tOval...|MOVE.L.#|
|00005b30| 77 68 69 74 65 43 6f 6c | 6f 72 2c 2d 28 53 50 29 |whiteCol|or,-(SP)|
|00005b40| 09 3b 20 6d 61 6b 65 20 | 74 68 65 20 72 65 64 20 |.; make |the red |
|00005b50| 6c 69 67 68 74 20 67 6f | 20 6f 66 66 0d 09 09 5f |light go| off..._|
|00005b60| 46 6f 72 65 43 6f 6c 6f | 72 0d 09 09 50 45 41 09 |ForeColo|r...PEA.|
|00005b70| 47 2e 53 74 6f 70 52 65 | 63 74 0d 09 09 5f 50 61 |G.StopRe|ct..._Pa|
|00005b80| 69 6e 74 4f 76 61 6c 0d | 0d 2a 20 2d 2d 2d 2d 2d |intOval.|.* -----|
|00005b90| 2d 2d 2d 2d 2d 2d 2d 2d | 20 46 52 41 4d 45 20 54 |--------| FRAME T|
|00005ba0| 48 45 20 4c 49 47 48 54 | 53 20 2d 2d 2d 2d 2d 2d |HE LIGHT|S ------|
|00005bb0| 2d 2d 2d 2d 2d 2d 2d 0d | 0d 40 32 09 09 4d 4f 56 |-------.|.@2..MOV|
|00005bc0| 45 2e 4c 09 23 62 6c 61 | 63 6b 43 6f 6c 6f 72 2c |E.L.#bla|ckColor,|
|00005bd0| 2d 28 53 50 29 0d 09 09 | 5f 46 6f 72 65 43 6f 6c |-(SP)...|_ForeCol|
|00005be0| 6f 72 0d 09 09 50 45 41 | 09 47 2e 53 74 6f 70 52 |or...PEA|.G.StopR|
|00005bf0| 65 63 74 0d 09 09 5f 46 | 72 61 6d 65 4f 76 61 6c |ect..._F|rameOval|
|00005c00| 09 09 09 3b 20 64 72 61 | 77 20 62 6c 61 63 6b 20 |...; dra|w black |
|00005c10| 6c 69 6e 65 20 61 72 6f | 75 6e 64 20 6c 69 67 68 |line aro|und ligh|
|00005c20| 74 0d 09 09 50 45 41 09 | 47 2e 47 6f 52 65 63 74 |t...PEA.|G.GoRect|
|00005c30| 0d 09 09 5f 46 72 61 6d | 65 4f 76 61 6c 09 09 09 |..._Fram|eOval...|
|00005c40| 3b 20 64 72 61 77 20 62 | 6c 61 63 6b 20 6c 69 6e |; draw b|lack lin|
|00005c50| 65 20 61 72 6f 75 6e 64 | 20 6c 69 67 68 74 0d 0d |e around| light..|
|00005c60| 45 78 69 74 09 09 55 4e | 4c 4b 09 41 36 09 09 09 |Exit..UN|LK.A6...|
|00005c70| 3b 20 64 65 73 74 72 6f | 79 20 74 68 65 20 6c 69 |; destro|y the li|
|00005c80| 6e 6b 0d 09 09 4d 4f 56 | 45 41 2e 4c 09 28 53 50 |nk...MOV|EA.L.(SP|
|00005c90| 29 2b 2c 41 30 09 09 3b | 20 70 75 6c 6c 20 6f 66 |)+,A0..;| pull of|
|00005ca0| 66 20 74 68 65 20 72 65 | 74 75 72 6e 20 61 64 64 |f the re|turn add|
|00005cb0| 72 65 73 73 0d 09 09 41 | 44 44 41 2e 4c 09 23 50 |ress...A|DDA.L.#P|
|00005cc0| 61 72 61 6d 53 69 7a 65 | 2c 53 50 09 09 3b 20 73 |aramSize|,SP..; s|
|00005cd0| 74 72 69 70 20 61 6c 6c | 20 6f 66 20 74 68 65 20 |trip all| of the |
|00005ce0| 63 61 6c 6c 65 72 27 73 | 20 70 61 72 61 6d 65 74 |caller's| paramet|
|00005cf0| 65 72 73 0d 09 09 4a 4d | 50 09 28 41 30 29 09 09 |ers...JM|P.(A0)..|
|00005d00| 09 3b 20 72 65 74 75 72 | 6e 20 74 6f 20 74 68 65 |.; retur|n to the|
|00005d10| 20 63 61 6c 6c 65 72 0d | 0d 09 09 44 62 67 49 6e | caller.|...DbgIn|
|00005d20| 66 6f 09 44 72 61 77 57 | 69 6e 64 09 09 3b 20 74 |fo.DrawW|ind..; t|
|00005d30| 68 69 73 20 6e 61 6d 65 | 20 77 69 6c 6c 20 61 70 |his name| will ap|
|00005d40| 70 65 61 72 20 69 6e 20 | 74 68 65 20 64 65 62 75 |pear in |the debu|
|00005d50| 67 67 65 72 0d 09 09 45 | 4e 44 50 0d 0d 2a 20 3d |gger...E|NDP..* =|
|00005d60| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005d70| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005d80| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 0d |========|=======.|
|00005d90| 2a 20 50 52 4f 43 45 44 | 55 52 45 20 41 64 6a 75 |* PROCED|URE Adju|
|00005da0| 73 74 43 75 72 73 6f 72 | 28 6d 6f 75 73 65 3a 20 |stCursor|(mouse: |
|00005db0| 50 6f 69 6e 74 3b 20 72 | 65 67 69 6f 6e 3a 20 52 |Point; r|egion: R|
|00005dc0| 67 6e 48 61 6e 64 6c 65 | 29 3b 0d 2a 20 3d 3d 3d |gnHandle|);.* ===|
|00005dd0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005de0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005df0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 0d 2a 20 |========|=====.* |
|00005e00| 43 68 61 6e 67 65 20 74 | 68 65 20 63 75 72 73 6f |Change t|he curso|
|00005e10| 72 27 73 20 73 68 61 70 | 65 2c 20 64 65 70 65 6e |r's shap|e, depen|
|00005e20| 64 69 6e 67 20 6f 6e 20 | 69 74 73 20 70 6f 73 69 |ding on |its posi|
|00005e30| 74 69 6f 6e 2e 20 54 68 | 69 73 20 61 6c 73 6f 20 |tion. Th|is also |
|00005e40| 63 61 6c 63 75 6c 61 74 | 65 73 20 74 68 65 0d 2a |calculat|es the.*|
|00005e50| 20 72 65 67 69 6f 6e 20 | 77 68 65 72 65 20 74 68 | region |where th|
|00005e60| 65 20 63 75 72 72 65 6e | 74 20 63 75 72 73 6f 72 |e curren|t cursor|
|00005e70| 20 72 65 73 69 64 65 73 | 20 28 66 6f 72 20 57 61 | resides| (for Wa|
|00005e80| 69 74 4e 65 78 74 45 76 | 65 6e 74 29 2e 20 49 66 |itNextEv|ent). If|
|00005e90| 20 74 68 65 20 6d 6f 75 | 73 65 20 69 73 0d 2a 20 | the mou|se is.* |
|00005ea0| 65 76 65 72 20 6f 75 74 | 73 69 64 65 20 6f 66 20 |ever out|side of |
|00005eb0| 74 68 61 74 20 72 65 67 | 69 6f 6e 2c 20 61 6e 20 |that reg|ion, an |
|00005ec0| 65 76 65 6e 74 20 77 6f | 75 6c 64 20 62 65 20 67 |event wo|uld be g|
|00005ed0| 65 6e 65 72 61 74 65 64 | 2c 20 63 61 75 73 69 6e |enerated|, causin|
|00005ee0| 67 20 74 68 69 73 20 72 | 6f 75 74 69 6e 65 0d 2a |g this r|outine.*|
|00005ef0| 20 74 6f 20 62 65 20 63 | 61 6c 6c 65 64 2c 20 61 | to be c|alled, a|
|00005f00| 6c 6c 6f 77 69 6e 67 20 | 75 73 20 74 6f 20 63 68 |llowing |us to ch|
|00005f10| 61 6e 67 65 20 74 68 65 | 20 72 65 67 69 6f 6e 20 |ange the| region |
|00005f20| 74 6f 20 74 68 65 20 72 | 65 67 69 6f 6e 20 74 68 |to the r|egion th|
|00005f30| 65 20 6d 6f 75 73 65 20 | 69 73 0d 2a 20 63 75 72 |e mouse |is.* cur|
|00005f40| 72 65 6e 74 6c 79 20 69 | 6e 2e 20 49 66 20 74 68 |rently i|n. If th|
|00005f50| 65 72 65 20 69 73 20 6d | 6f 72 65 20 74 6f 20 74 |ere is m|ore to t|
|00005f60| 68 65 20 65 76 65 6e 74 | 20 74 68 61 6e 20 6a 75 |he event| than ju|
|00005f70| 73 74 20 74 68 65 20 6d | 6f 75 73 65 20 6d 6f 76 |st the m|ouse mov|
|00005f80| 65 64 2c 20 77 65 0d 2a | 20 67 65 74 20 63 61 6c |ed, we.*| get cal|
|00005f90| 6c 65 64 20 62 65 66 6f | 72 65 20 74 68 65 20 65 |led befo|re the e|
|00005fa0| 76 65 6e 74 20 69 73 20 | 70 72 6f 63 65 73 73 65 |vent is |processe|
|00005fb0| 64 20 74 6f 20 6d 61 6b | 65 20 73 75 72 65 20 74 |d to mak|e sure t|
|00005fc0| 68 65 20 63 75 72 73 6f | 72 20 69 73 20 74 68 65 |he curso|r is the|
|00005fd0| 20 72 69 67 68 74 0d 2a | 20 6f 6e 65 2e 20 49 6e | right.*| one. In|
|00005fe0| 20 61 6e 79 20 28 61 68 | 65 6d 29 20 65 76 65 6e | any (ah|em) even|
|00005ff0| 74 2c 20 74 68 69 73 20 | 69 73 20 63 61 6c 6c 65 |t, this |is calle|
|00006000| 64 20 61 67 61 69 6e 20 | 62 65 66 6f 72 65 20 77 |d again |before w|
|00006010| 65 20 66 61 6c 6c 20 62 | 61 63 6b 20 69 6e 74 6f |e fall b|ack into|
|00006020| 20 57 4e 45 2e 0d 0d 09 | 09 53 45 47 09 27 4d 61 | WNE....|.SEG.'Ma|
|00006030| 69 6e 27 09 09 09 3b 20 | 63 61 73 65 20 73 65 6e |in'...; |case sen|
|00006040| 73 69 74 69 76 65 0d 41 | 64 6a 75 73 74 43 75 72 |sitive.A|djustCur|
|00006050| 73 6f 72 09 50 52 4f 43 | 09 45 58 50 4f 52 54 0d |sor.PROC|.EXPORT.|
|00006060| 0d 53 74 61 63 6b 46 72 | 61 6d 65 09 52 45 43 4f |.StackFr|ame.RECO|
|00006070| 52 44 09 7b 41 36 4c 69 | 6e 6b 7d 2c 44 45 43 52 |RD.{A6Li|nk},DECR|
|00006080| 09 09 3b 20 62 75 69 6c | 64 20 61 20 73 74 61 63 |..; buil|d a stac|
|00006090| 6b 20 66 72 61 6d 65 20 | 72 65 63 6f 72 64 0d 50 |k frame |record.P|
|000060a0| 61 72 61 6d 42 65 67 69 | 6e 09 45 51 55 09 2a 09 |aramBegi|n.EQU.*.|
|000060b0| 09 09 3b 20 73 74 61 72 | 74 20 70 61 72 61 6d 65 |..; star|t parame|
|000060c0| 74 65 72 73 20 61 66 74 | 65 72 20 74 68 69 73 20 |ters aft|er this |
|000060d0| 70 6f 69 6e 74 0d 4d 6f | 75 73 65 52 65 67 69 6f |point.Mo|useRegio|
|000060e0| 6e 09 44 53 2e 4c 09 31 | 09 09 09 3b 20 70 61 73 |n.DS.L.1|...; pas|
|000060f0| 73 65 64 20 70 6f 69 6e | 74 65 72 20 74 6f 20 63 |sed poin|ter to c|
|00006100| 75 72 72 65 6e 74 20 72 | 65 67 69 6f 6e 0d 57 68 |urrent r|egion.Wh|
|00006110| 65 72 65 09 09 44 53 2e | 4c 09 31 09 09 09 3b 20 |ere..DS.|L.1...; |
|00006120| 74 68 65 20 6d 6f 75 73 | 65 20 6c 6f 63 61 74 69 |the mous|e locati|
|00006130| 6f 6e 20 70 61 73 73 65 | 64 20 74 6f 20 75 73 0d |on passe|d to us.|
|00006140| 50 61 72 61 6d 53 69 7a | 65 09 45 51 55 09 50 61 |ParamSiz|e.EQU.Pa|
|00006150| 72 61 6d 42 65 67 69 6e | 2d 2a 09 09 3b 20 73 69 |ramBegin|-*..; si|
|00006160| 7a 65 20 6f 66 20 61 6c | 6c 20 74 68 65 20 70 61 |ze of al|l the pa|
|00006170| 73 73 65 64 20 70 61 72 | 61 6d 65 74 65 72 73 0d |ssed par|ameters.|
|00006180| 52 65 74 41 64 64 72 20 | 09 44 53 2e 4c 09 31 09 |RetAddr |.DS.L.1.|
|00006190| 09 09 3b 20 70 6c 61 63 | 65 20 68 6f 6c 64 65 72 |..; plac|e holder|
|000061a0| 20 66 6f 72 20 72 65 74 | 75 72 6e 20 61 64 64 72 | for ret|urn addr|
|000061b0| 65 73 73 0d 41 36 4c 69 | 6e 6b 09 09 44 53 2e 4c |ess.A6Li|nk..DS.L|
|000061c0| 09 31 09 09 09 3b 20 70 | 6c 61 63 65 20 68 6f 6c |.1...; p|lace hol|
|000061d0| 64 65 72 20 66 6f 72 20 | 41 36 20 6c 69 6e 6b 0d |der for |A6 link.|
|000061e0| 46 72 6f 6e 74 4d 6f 73 | 74 09 44 53 2e 4c 09 31 |FrontMos|t.DS.L.1|
|000061f0| 09 09 09 3b 20 6c 6f 63 | 61 6c 20 70 6f 69 6e 74 |...; loc|al point|
|00006200| 65 72 20 74 6f 20 74 68 | 65 20 66 72 6f 6e 74 20 |er to th|e front |
|00006210| 77 69 6e 64 6f 77 0d 41 | 72 72 6f 77 52 67 6e 09 |window.A|rrowRgn.|
|00006220| 44 53 2e 4c 09 31 09 09 | 09 3b 20 6c 6f 63 61 6c |DS.L.1..|.; local|
|00006230| 20 68 61 6e 64 6c 65 20 | 74 6f 20 74 68 65 20 61 | handle |to the a|
|00006240| 72 72 6f 77 20 63 75 72 | 73 6f 72 20 72 65 67 69 |rrow cur|sor regi|
|00006250| 6f 6e 0d 50 6c 75 73 52 | 67 6e 09 09 44 53 2e 4c |on.PlusR|gn..DS.L|
|00006260| 09 31 09 09 09 3b 20 6c | 6f 63 61 6c 20 68 61 6e |.1...; l|ocal han|
|00006270| 64 6c 65 20 74 6f 20 74 | 68 65 20 70 6c 75 73 20 |dle to t|he plus |
|00006280| 63 75 72 73 6f 72 20 72 | 65 67 69 6f 6e 0d 4c 6f |cursor r|egion.Lo|
|00006290| 63 61 6c 53 69 7a 65 09 | 45 51 55 20 09 2a 09 09 |calSize.|EQU .*..|
|000062a0| 09 3b 20 73 69 7a 65 20 | 6f 66 20 61 6c 6c 20 74 |.; size |of all t|
|000062b0| 68 65 20 6c 6f 63 61 6c | 20 76 61 72 69 61 62 6c |he local| variabl|
|000062c0| 65 73 0d 09 09 45 4e 44 | 52 0d 0d 09 09 49 4d 50 |es...END|R....IMP|
|000062d0| 4f 52 54 09 49 73 44 41 | 57 69 6e 64 6f 77 2c 49 |ORT.IsDA|Window,I|
|000062e0| 73 41 70 70 57 69 6e 64 | 6f 77 0d 0d 09 09 57 49 |sAppWind|ow....WI|
|000062f0| 54 48 09 53 74 61 63 6b | 46 72 61 6d 65 09 09 3b |TH.Stack|Frame..;|
|00006300| 20 63 6f 76 65 72 20 6f | 75 72 20 6c 6f 63 61 6c | cover o|ur local|
|00006310| 20 73 74 61 63 6b 20 66 | 72 61 6d 65 0d 09 09 4c | stack f|rame...L|
|00006320| 49 4e 4b 09 41 36 2c 23 | 4c 6f 63 61 6c 53 69 7a |INK.A6,#|LocalSiz|
|00006330| 65 09 09 3b 20 61 6c 6c | 6f 63 61 74 65 20 6f 75 |e..; all|ocate ou|
|00006340| 72 20 6c 6f 63 61 6c 20 | 73 74 61 63 6b 20 66 72 |r local |stack fr|
|00006350| 61 6d 65 0d 0d 09 09 43 | 4c 52 2e 57 09 2d 28 53 |ame....C|LR.W.-(S|
|00006360| 50 29 09 09 09 3b 20 73 | 70 61 63 65 20 66 6f 72 |P)...; s|pace for|
|00006370| 20 72 65 73 75 6c 74 20 | 6f 66 20 49 73 41 70 70 | result |of IsApp|
|00006380| 57 69 6e 64 6f 77 0d 09 | 09 43 4c 52 2e 4c 09 2d |Window..|.CLR.L.-|
|00006390| 28 53 50 29 09 09 09 3b | 20 73 70 61 63 65 20 66 |(SP)...;| space f|
|000063a0| 6f 72 20 72 65 73 75 6c | 74 20 6f 66 20 46 72 6f |or resul|t of Fro|
|000063b0| 6e 74 57 69 6e 64 6f 77 | 0d 09 09 5f 46 72 6f 6e |ntWindow|..._Fron|
|000063c0| 74 57 69 6e 64 6f 77 09 | 09 09 3b 20 70 75 73 68 |tWindow.|..; push|
|000063d0| 20 66 72 6f 6e 74 20 77 | 69 6e 64 6f 77 20 70 6f | front w|indow po|
|000063e0| 69 6e 74 65 72 0d 09 09 | 4d 4f 56 45 2e 4c 09 28 |inter...|MOVE.L.(|
|000063f0| 53 50 29 2c 46 72 6f 6e | 74 4d 6f 73 74 28 41 36 |SP),Fron|tMost(A6|
+--------+-------------------------+-------------------------+--------+--------+
Only 25.0 KB of data is shown above.